请教一个socket进行tcp通讯的问题

demo001 2005-07-02 03:24:50
请教一下各位

我想做一个TCP的server,用一个父进程listen客户端发来的请求,然后accpet,通过管道将accept生成的socket号码,传给子进程

然后由子进程负责与这个被接受的客户端进行通讯,父进程负责listen and accept新的客户端请求。

问题:
现在父进程accept是成功的,子进程通过管道读取的accept生成的socket号码也是正确的,可是子进程一旦调用
read(iSocketNum, buffer, bufferSize)读取客户端发来的信息总是失败。
如果父进程自己读取就没有这种问题。

请问为什么,是不是这样做原理有什么问题?


...全文
127 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
zzw_happy 2005-07-03
  • 打赏
  • 举报
回复
先accept获取socket id,再创建子进程(好像需要设置继承父进程属性)
loveleijuforever 2005-07-03
  • 打赏
  • 举报
回复
accept的sockid和真正通讯的sockid不一样这点斑竹注意没有
demo001 2005-07-02
  • 打赏
  • 举报
回复
是不是我通过管道向子进程传递的不仅仅是socket序号本身,而且应该是该socket的地址?

23,120

社区成员

发帖
与我相关
我的任务
社区描述
Linux/Unix社区 应用程序开发区
社区管理员
  • 应用程序开发区社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧