免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 2250 | 回复: 8
打印 上一主题 下一主题

[C] 紧急求助::unix 下的c语言编程: 多路复用select的用法! [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2003-11-07 11:54 |只看该作者 |倒序浏览
十万火急!!!!!!!!请大虾们救命!!!!!!!!!!!万分感谢!!!!!!!!!!!!!!!!!!!!!!

我要在unix下用c编写网络代码, 哪位高手请指教,
如何在不开辟进程的情况下,实现多用户连接和通信

!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!

论坛徽章:
0
2 [报告]
发表于 2003-11-07 11:57 |只看该作者

紧急求助::unix 下的c语言编程: 多路复用select的用法!

不开辟进程的情况下,多路复用虽然可以实现,但本质上还是一个一个处理的,根本就谈不上多用户处理。所以我觉得好像行不通。如果可以的话,我也想学习一下:)

论坛徽章:
1
荣誉版主
日期:2011-11-23 16:44:17
3 [报告]
发表于 2003-11-07 12:04 |只看该作者

紧急求助::unix 下的c语言编程: 多路复用select的用法!

原帖由 "tanchanghe" 发表:
十万火急!!!!!!!!请大虾们救命!!!!!!!!!!!万分感谢!!!!!!!!!!!!!!!!!!!!!!

我要在unix下用c编写网络代码, 哪位高手请指教,
如何在不开辟进程的情况下,实现多用户连接和通信

!!!!!!!!!!!!!!!!!!!!!!!..........

你看一看stevens写的《unix网络编程》第一卷吧,
一定有你想要的。

论坛徽章:
0
4 [报告]
发表于 2003-11-07 12:06 |只看该作者

紧急求助::unix 下的c语言编程: 多路复用select的用法!

在这种情况下,是一个一个信息进行处理的,但是应用多路复用,可以把连接信息阻塞,在下次循环时,可以进行处理,不会遗漏信息!

论坛徽章:
0
5 [报告]
发表于 2003-11-07 12:07 |只看该作者

紧急求助::unix 下的c语言编程: 多路复用select的用法!

原帖由 "lenovo" 发表:

你看一看stevens写的《unix网络编程》第一卷吧,
一定有你想要的。

哪儿有电子版的吗?

论坛徽章:
1
荣誉版主
日期:2011-11-23 16:44:17
6 [报告]
发表于 2003-11-07 12:14 |只看该作者

紧急求助::unix 下的c语言编程: 多路复用select的用法!

原帖由 "tanchanghe" 发表:

哪儿有电子版的吗?

你看看刚发的几张帖子,有人问《unix环境高级编程》,
我给了一个ftp地址,里面有你需要的。

论坛徽章:
0
7 [报告]
发表于 2003-11-07 12:19 |只看该作者

紧急求助::unix 下的c语言编程: 多路复用select的用法!

我觉得很简单。select会用吧?在程序创建的时候,只有把listen的sock添加到fd_set里面。如果有新的连接进来,accept以后也加入到fd_set里面。调用select,发现哪个socket有时间,就对哪一个socket进行操作。唯一需要注意的地方就是需要区别listen的socket和client的socket差别。

论坛徽章:
0
8 [报告]
发表于 2003-11-07 12:55 |只看该作者

紧急求助::unix 下的c语言编程: 多路复用select的用法!

我也是这样做的,但是,如果连接以后马上发数据包,程序要到第二次调用select后才能读到数据,而且读数据时,要遍历所有的端口号!
有没有更好的方法呢?

论坛徽章:
0
9 [报告]
发表于 2003-11-07 13:12 |只看该作者

紧急求助::unix 下的c语言编程: 多路复用select的用法!

个人觉得这样的开销没什么问题吧。如果真的觉得这样有效率上的问题,就不应该采用这样的模式,而应该考虑用多进程或者多线程。bind8就是单进程的,差别只是使用的是udp,效率上也没有发现有什么问题吧。
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP