【发布时间】:2013-05-23 02:58:39
【问题描述】:
这对read_nonblock 来说很简单,因为另一端可能还没有发送任何东西,我们将被阻止,直到有一些数据可用。但是我想不出write()被屏蔽的情况。谁能给我一个例子,非常感谢示例代码。
【问题讨论】:
标签: ruby io nonblocking
这对read_nonblock 来说很简单,因为另一端可能还没有发送任何东西,我们将被阻止,直到有一些数据可用。但是我想不出write()被屏蔽的情况。谁能给我一个例子,非常感谢示例代码。
【问题讨论】:
标签: ruby io nonblocking
找到答案...如果write()-ing 有一个比系统缓冲区大(~2MB?)的巨大数据,而另一端不是recv()-ing,则阻止。
如果磁盘繁忙,也可以在写入磁盘时阻塞。
p/s:感谢#ruby-lang @freenode :)
【讨论】: