首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > C语言 >

IPC有关问题

2012-06-01 
IPC问题我有一个C++文件,有一个C文件想用socket在两个进程间通信,C++进程传数据给C怎么做这是不是最快的方

IPC问题
我有一个C++文件,有一个C文件

想用socket在两个进程间通信,C++进程传数据给C  

怎么做

这是不是最快的方法 内存映射好像蛮麻烦的

[解决办法]
方法很多嘛,类Unix下用共享内存、域套接字、套接字、管道等,Windows下用内存文件映射、套接字、管道等,管道是最快的,套接字要做一些准备工作,还要客户端服务端连接。
[解决办法]
简单的C/S应用而已啊。C/S并不要求两端采用相同的语言开发,因此一端是C++进程,一端是C进程,没有什么特别的。
[解决办法]
你说的最快的方法,是指效率最高,还是写起来最简单?
实际上都不复杂
内存映射无疑是效率最高的方式
另外,管道,socket都可以实现
mkfifo("/home/abc/pipe.sck", 0666);
open("/home/abc/pipe.sck",O_RDONLY);
read(...);

另外一个:
mkfifo
open("",O_WRONLY);
write(...);

OK了。
socket也类似的
[解决办法]
不同需求用不同方法, 你有什么具体点的需求描述?
[解决办法]
共享内存固定成本比较大,但可变成本比较小
[解决办法]
你学下IPC几种方式,各自的优缺点,然后选择中方式来实现吧。

不用担心C++ 和 C的差别,一样的!
[解决办法]
共享内存应该是最快的。
管道和套接字都比较简单。不过套接字一般用作远程通信。

[解决办法]

共享临时文本文件
最简单。

热点排行