linux c socket编程,通信问题
现在服务器端使用多进程处理客户端的请求,现在假定有三个客户端向服务器发送了数据,然后对三个数据进行相应的处理(处理结果同时依赖这三个数据),然后要将处理结果都通知给这三个进程,然后客户端接受到响应。
现在先假定恰好只有三个客户端请求服务器,不考虑其它并发问题。目前我是每次客户端请求时,先将数据写入文件a,然后去计算数据是否达到三个,如果达到三个就计算结果,然后将结果写入另一个文件b,否则就去循环读取b文件(中间如果没有数据就关闭文件sleep(1))直到b中有数据。
客户端希望是输入数据后就等待服务器返回数据。
暂时可以不考虑epoll等,希望就系统调用,不想去依赖第三方库之类的。
不知道这个还有什么好的想法,望指点一番!
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
不想用epoll, 可以用select, 或者poll
数据量大不大, 数据量不大的话, 不需要先存到文件里面去, 可以直接放到内存里面, 每次读完了, 都去检测一下三块内存数据是否完整
用select更简单。