我需要在两个进程之间发送/接收数据。其中之一将使用 Qt(4 或 5)。 该进程将一直运行(如后台进程)。
另一个进程将启动,然后它应该能够发送 argv
到
首先处理并从中接收一些answer
。
第二个进程必须尽快启动,所以使用 QtCore 是最后的资源。这意味着我需要它尽可能小和快,所以我需要使用普通的 没有任何外部库的 C/C++。
有什么想法可以做到吗?
如果那不可能,我将不得不在第二个过程中使用 QtCore。你知道多少 慢是因为 QtCore vs plain C/C++? (就启动时间而言)。
问候
编辑:
我不能使用 QBus,因为它必须与 Mac/Linux/Windows 兼容。
最佳答案
如果它需要完全跨平台兼容,您最好的选择可能是命名套接字/命名管道,它们应该适用于每个平台。 Should take you to the information you need用于套接字设置。您仍然需要在纯 C++ 应用程序中使用一些网络处理代码,但它的开销应该比 Qt-Core 和 Qt-Network 少得多。
您也可以使用共享内存来实现,但为了简单起见,我更喜欢套接字方法。
关于c++ - Qt 和 C/C++ 之间的 IPC,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14749567/