社区
VxWorks
帖子详情
请问在VX WORKS 下iosIoctl将套接字设置成非阻塞它的参数是怎么弄的哦。
abzhang2
2008-03-04 09:58:39
请问在VX WORKS 下iosIoctl将套接字设置成非阻塞它的参数是怎么弄的哦。
...全文
245
8
打赏
收藏
请问在VX WORKS 下iosIoctl将套接字设置成非阻塞它的参数是怎么弄的哦。
请问在VX WORKS 下iosIoctl将套接字设置成非阻塞它的参数是怎么弄的哦。
复制链接
扫一扫
分享
转发到动态
举报
AI
作业
写回复
配置赞助广告
用AI写文章
8 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
frank_zhou
2008-03-08
打赏
举报
回复
vxworks中socket是支持非阻塞方式的,可以通过ioctl或者setsockopt来实现
xues
2008-03-07
打赏
举报
回复
VxWorks的SOCKER支持非阻塞式的操作吗?我印象中是不支持的。而且,我觉得你用select,要非阻塞干什么?不是这种模式的
abzhang2
2008-03-05
打赏
举报
回复
谢谢楼上的。
我设置成非阻塞后。 FD_ISSET()总是返回非0
/*create socket*/
UDPCreate_Recv();
ioctl(sock_udp_recv, FIONBIO, &ul)
bind(sock_udp_recv, (struct sockaddr_in*)&addr_udp_recv, sizeof(addr_udp_recv));
while(1)
{
FD_ZERO(&fd_read);
FD_SET(sock_udp_recv, &fd_read);
timeout_recv.tv_sec = 1;
timeout_recv.tv_usec = 1;
nret = select(0, &fd_read, 0, 0, &timeout_recv);
/*问下,这里总是返回为非0*/
nret = FD_ISSET(sock_udp_recv, &fd_read); if(!nret)
{
continue;
}
recvfrom(...)
}
frank_zhou
2008-03-05
打赏
举报
回复
用setsockopt
hzcpig
2008-03-05
打赏
举报
回复
已经用了select为什么还要设成非阻塞?select本身就设置了timeout超时时间,设短点不就不阻塞了?
另外,你select的第一个参数好像错了,印象中应该
nret = select(sock_udp_recv + 1, &fd_read, 0, 0, &timeout_recv);
hzcpig
2008-03-04
打赏
举报
回复
上面错了,应该是ioctl(sockfd, FIONBIO, &flag)
hzcpig
2008-03-04
打赏
举报
回复
int flag = 1;
iosIoctl(sockfd, FIONBIO, &flag);
kbryant
2008-03-04
打赏
举报
回复
进来学习
PADS
VX
2.2在WIN7系统下菜单显示不完整的解决方法
新版本的PADS
VX
2.2在部分WIN7系统下有菜单显示不完整的问题,如下图所示。 这个问题,可能导致的原因之一是,WIN7系统本身的BUG,尝试修正的方法如下: 1 打开“控制面板”——选择“外观和个性化选项”——选择“更改字体设置”,单击“还原默认字体设置”。 2 有些时候我们恢复系统默认也没有效果,那就说明我们非 Unicode 程序的语言设置的有些问题,更改方法: 打...
PADS
VX
2.8 测量精度的设置方法
前面我们介绍了测量工具的使用方法,可以测量出PCB中的焊盘、板框等元素的长度。所测量的数据只保留了一位小数,如果想要更精确的数据,应该怎么操作呢?打开PADS
VX
layout界面,点击“工具”→“选项”(快捷方式:Ctrl+Enter),在弹出的“选项”窗口,选择“尺寸标注”下的“文本”,修改“精度”为3(想要显示X位小数,便输入X)。操作如下图所示: 重新设置精度后效果如下图所示: 以上便是PADS
VX
测量精度的设置方法 ...
PADS
VX
2.8 基本规则的设置方法
PCB布局完成后,在走线之前要设置相应的基本规则去合理规划走线的宽度、间距以及过孔的大小等等,以确保板子能正常连接和使用。打开layout界面,点击“设置”→“设计规则”(也可以点击工具栏上的图标)→“默认”→“安全间距”,进入到线宽、间距、网络等编辑对话框,根据板子的要求去设置相应的数值即可。如下图所示: 规则的设置越简单越好,并不需要太过复杂,在大多数PCB设计中,“统一网络”和“其他”这两项规则基本可以为“0”;“线宽”的最小值与最大值一般为3.5MIL和200MIL(最小值取决于板厂的工艺).
PADS
VX
2.8 通孔焊盘的金属化与非金属化的设置方法
金属化孔是指顶层和底层之间的孔壁上用化学反应将一层薄铜镀在孔的内壁上,使得印制电路板的顶层与底层相互连接。而非金属化孔是指没有用电镀层或其他导电材料加固的孔。简单来说就是孔内壁是否覆铜。金属化孔与非金属化孔三D视图如下图所示: 接下来讲解通孔焊盘的金属化与非金属化的设置方法。打开PADSlayout,点击“工具栏”→“PCB封装编辑器”,点击“端点”放置一个通孔焊盘后,选中通孔焊盘并单击右键选择“焊盘栈”,在弹出的“焊盘栈特性”窗口右下角,勾选√“电镀”属性的话,为金属化...
PADS
VX
2.8 实心铜与网状铜的设置方法
在不同PCB设计覆铜的时候,整板都铺完铜的叫实心铜,整板出现一格一格间距的叫网状铜。大部分设计都采用实心铜的铺铜方式以增加载流量,因此基本不会使用网状铜覆铜方式。实心铜与网状铜效果如下图所示: 如何设置实心铜与网状铜呢?打开PADSlayout并加载一份PCB文件,选中铺铜形状后单击右键选择“特性”或者双击铺铜形状打开“绘图特性”窗口,然后快捷方式“Ctrl+Enter”打开“选项”窗口,选择“栅格”界面中的“铺铜栅格”。设置铜箔>宽度为网状铜,反正为实心铜。操作如下图所示: ...
VxWorks
2,184
社区成员
2,914
社区内容
发帖
与我相关
我的任务
VxWorks
xworks是美国 Wind River System 公司( 以下简称风河公司 ,即 WRS 公司)推出的一个实时操作系统。
复制链接
扫一扫
分享
社区描述
xworks是美国 Wind River System 公司( 以下简称风河公司 ,即 WRS 公司)推出的一个实时操作系统。
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章