这些小活动你都参加了吗?快来围观一下吧!>>
电子产品世界 » 论坛首页 » 嵌入式开发 » MCU » 请教vxworks的socket通信编程,十分着急! 问题已解决!

共4条 1/1 1 跳转至

请教vxworks的socket通信编程,十分着急! 问题已解决!

菜鸟
2007-01-16 19:09:18     打赏
Vxworks下的client程序,创建了60个socket分别与60个server(运行在windows下的一个仿真程序)通信,通信速度为700ms查询一圈(每次查询10个),运行一段时间后,有的连接出现不可写的情况(用select实现,时间为1000us),继续运行一段时间,send调用返回errno= ENOBUFS (缓冲内存不足),程序调用shutdown、close释放资源,然后调用socket、setsockopt(设置缓冲区大小)、connect,会出现setsockopt返回-1或connect返回errno= ENOBUFS的现象,不知原因如何?

1、 是否和server仿真程序有关?

2、 缓冲内存为何刚开始够用而后来不足?

3、 每个socket的收发缓冲区大小设置的原则是什么?

十分着急,请各位高手指点,非常谢谢!

[align=right][color=#000066][此贴子已经被作者于2007-1-20 11:18:57编辑过][/color][/align]



关键词: 请教     vxworks     socket     通信     编程         

菜鸟
2007-01-20 19:04:00     打赏
2楼
这个问题已解决,是server软件接收异常引起的,但client errno= ENOBUFS 的深层次原因还不清楚,非常感谢各位!

菜鸟
2007-01-20 19:07:00     打赏
3楼
又出现了新的问题,正常通信时,拔掉网线,client send返回errno= ENOBUFS (缓冲内存不足),shutdown、close后调用socket、setsockopt(设置缓冲区大小)、connect,会出现setsockopt返回-1或connect返回errno= ENOBUFS的现象,大约9分钟之后重建连接成功,不知原因如何?请各位继续指点。

菜鸟
2007-01-23 19:11:00     打赏
4楼
非常着急啊,请高手百忙之中指导一下!

共4条 1/1 1 跳转至

回复

匿名不能发帖!请先 [ 登陆 注册 ]