回复: QT编写的基于内存共享方式的进程间通信
#11 回 stlcours 的帖子 [圣域天子 03-03 16:13]
stlcours:DLL不是被隔离的吗?你怎么使用? (2017-03-03 15:56)
实际还是互通的,具体看你怎么个用法了
#12 回 圣域天子 的帖子 [stlcours 03-03 16:48]
圣域天子:实际还是互通的,具体看你怎么个用法了
(2017-03-03 16:13)
具体怎么用嘛,讲讲思路,或者贴点代码,谢谢~~
#13 回 stlcours 的帖子 [圣域天子 03-03 16:55]
stlcours:具体怎么用嘛,讲讲思路,或者贴点代码,谢谢~~ (2017-03-03 16:48)
实际上想想跟QShareMemory也差不多:
http://blog.csdn.net/mickeyty/article/details/51721860
#14 回 圣域天子 的帖子 [stlcours 03-03 20:59]
圣域天子:实际上想想跟QShareMemory也差不多:
http://blog.csdn.net/mickeyty/article/details/51721860 (2017-03-03 16:55)
高手,谢谢了。今天第一次知道还可以利用2~3G的地址空间,闻所未闻。
#15 [timer3309 03-25 13:32]
补充一句,请私密我的朋友也看下。
用共享内存并不是做进程间通信的唯一办法。当然是有它的优势,但是接口太简单是硬伤。直接的问题是,数据是共享了,共享内容变化了,咋通知呢?QT 也有 qdbus 这样的模块,但是win下不能用,这。。。也有RPC之类的扩展库,没有发现好用的。
ZMQ虽然它只是一套消息库,但是因为可以直接嵌入式应用(类似sqlite相比于mysql),等于是直接为C++进程提供了通用的进程间消息机制,低开销,应用广泛。
特意提ZMQ 是推荐给想解决进程间通信的朋友们,一个我认为较为成熟的解决方法。如果进程间的消息比较多,复杂,还可以ZMQ+ protocolbuf 配合使用
以上,供各位开拓思路。