0
|
tstenner · 技术社区 · 14 年前 |
![]() |
1
1
不,就绪操作是感兴趣的操作的子集。如果键对写不感兴趣,选择器将不会设置其写就绪操作(这并不意味着它不能接受写操作)。您可以随时调用write()。准备好写后,write()很可能会成功,但也不能保证成功) |
![]() |
2
0
有一个陷阱,我花了几个小时才弄清楚。考虑以下代码:
打印“选择R,返回W”。所以iswritable()可能是真的,而只有op_read感兴趣。如果op_write包含在前面的select()调用中,并且当前select()返回0,这意味着selkey没有更新,则会发生这种情况。 完整的证明代码如下: https://gist.github.com/wuyongzheng/43cc9dc07e13124663d1 . 要运行,您需要在端口22上有一个ssh服务器。 |