社区
Linux/Unix社区
帖子详情
请问select什么情况下可写
sumnet
2013-10-21 02:42:52
请问select什么情况下可写
我用select写了一个tcp跨平台的异步通信框架
在windows下通过select检测只要不是读状态返回的就是可写状态,于是我只用填充发送缓冲区,在可写的时候把数据发出去就OK了
但是同样的代码换到linxu平台上之后,select返回的所有套接字的状态都是可读,包括监听套接字和连接套接字,而且recv根本读不到数据,请问linux平台select什么时候可写呢,通过和上面相同的方式那我缓冲区的数据根本没发出去的机会了。
...全文
343
3
打赏
收藏
请问select什么情况下可写
请问select什么情况下可写 我用select写了一个tcp跨平台的异步通信框架 在windows下通过select检测只要不是读状态返回的就是可写状态,于是我只用填充发送缓冲区,在可写的时候把数据发出去就OK了 但是同样的代码换到linxu平台上之后,select返回的所有套接字的状态都是可读,包括监听套接字和连接套接字,而且recv根本读不到数据,请问linux平台select什么时候可写呢,通过和上面相同的方式那我缓冲区的数据根本没发出去的机会了。
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
3 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
qq120848369
2013-10-22
打赏
举报
回复
看一下网络是否可ping。
sumnet
2013-10-21
打赏
举报
回复
引用 1 楼 Idle_Cloud 的回复:
你的select用对了吗,recv读的返回为0,表示连接已经中断了哦。
谢谢回复,已经解决了,是我的判断出问题了,现在可以正常读写了 不过有个问题,我跑Linux服务端,Windows客户端连接没问题 跑Windows服务端,Linux客户端去连,阻塞connect返回的是110timeout,不知道这样跨平台连接有什么要注意的么,我是用本机虚拟机跑的LINUX
Carl_CCC
2013-10-21
打赏
举报
回复
你的select用对了吗,recv读的返回为0,表示连接已经中断了哦。
sharding-jdbc什么
情况
select
会走主库
第一次使用sharding-jdbc然后就碰到了
select
for update不走主库,然后查了下官方文档并且自己验证了一下,以下几种
情况
会走主库。
select
前增加HintManager.getInstance().setMasterRouteOnly();类似于pagehelper...
关于DataTable的
Select
方法参数表达式区分大小
写
的问题
例如表A中有个字段Code,其中某一行的值为“TEST”,默认
情况
下通过下面两句代码获取的数据是一致的。A.
Select
("Code = 'TEST'") A.
Select
("Code = 'test'")当设置DataTable的CaseSensitive设置为true后则会区分大小...
网络编程学习笔记--1.socket可读可
写
条件
socket可读可
写
条件,经常做为面试题被问,因为它考察被面试者对网络编程的基础了解的是不是够深入。 要了解socket可读可
写
条件,我们先了解几个概念: 1.接收缓存区低水位标记(用于读)和发送缓存区低水位标记...
select
函数详解
使用
select
函数可以完成非阻塞方式工作的程序,它能够监视我们需要监视的文件描述符的变化
情况
——读
写
或是异常。 非阻塞方式:non-block,就是进程或线程执行此函数时不必非要等待事件的发生,一旦执行肯定返回,...
select
()函数返回值及
select
与socket阻塞的关系及
select
函数的意义
1、
select
()函数返回值
select
的返回值与recv函数的返回值十分类似,都分>...在出错的
情况
下, 这三种错误下认为连接是正常的,继续接收 if(errno == EINTR ||(errno == EAGAIN)||errno == EWOU...
Linux/Unix社区
23,120
社区成员
74,507
社区内容
发帖
与我相关
我的任务
Linux/Unix社区
Linux/Unix社区 应用程序开发区
复制链接
扫一扫
分享
社区描述
Linux/Unix社区 应用程序开发区
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章