我正在使用C ++,并且有一个简单的客户端.exe,当传递文件名时,它会处理它并返回成功或错误代码。我想创建一个Windows C ++ .exe执行以下操作,并且正在寻找示例代码来执行此操作:
我对此做了一些研究,发现管道可用于进程之间的通信。我发现这个示例应用程序在c ++中进行服务器和客户端之间的通信:https://code.msdn.microsoft.com/windowsapps/CppNamedPipeServer-d1778534
然而,示例应用程序确实从客户端向服务器发送请求并获得响应,我想修改它或使用不同的示例应用程序通过具有公共工作队列(或存储此队列或批处理的管道)进行批处理工作)并将工作发送给客户。我想同步这项工作,所以一旦客户端完成了一个文件,我就会发送另一个文件进行处理。
基本上我想创建一个示例应用程序.exe,它启动多个客户端并通过进程间通信发送它们。任何样本C ++代码都是值得赞赏的。
由于
Jeff Lacoste
答案 0 :(得分:0)
您可以查看boost。它有boost::interprocess,您可以在其中阅读有关IPC的方法的许多想法。
我个人从不使用boost::interprocess
,因为我是boost::asio的忠实粉丝,就像你的目的一样,它拥有你需要的一切(除了创建一个过程)。
在谷歌上还有很多其他内容,它完全是基于意见的库使用或直接使用原生OS API,这就是为什么我不知道这个问题尚未关闭。
至于您提供"代码示例"的请求,这2个链接包含您列出的有关IPC及其开源的所有内容的示例,因此您可以查看这些库如何与本机OS API。