1
誰でも私にrecv
の例を教えてもらえますか?epoll
edge-triggeredモードのnonblockingソケットですか?私はいくつかの問題があるので尋ねる。 EPOLLETセットアップ用recv from edge-triggered mode
誰でも私にrecv
の例を教えてもらえますか?epoll
edge-triggeredモードのnonblockingソケットですか?私はいくつかの問題があるので尋ねる。 EPOLLETセットアップ用recv from edge-triggered mode
manページには、持っている:エッジトリガとしてepollを使用する
の提案方法(EPOLLET)インタフェースは以下の通りです、とフォローを回避することが可能と落とし穴。
i
with non-blocking file descriptors
ii
by going to wait for an event only after read(2) or write(2)
return EAGAIN
編集: あなたがxバイト未満を受信するまで、あなたはまた、バイトのx個のために)((RECVを呼び出す)、または読み取ることができます。
これを行わないと、データがソケットバッファーに残っていて、ソケット上のETアクティビティーが妨げられてしまいます。
あなたはどんな問題を抱えていますか?
参照:HTTP://linux.die.net/man/4/epollコード例 –
iについては、非ブロッキングソケットでそれを使用するとEAGAIN、例えばながら読み取る: は{N = RECV(靴下、TEMPを行います、sizeof(temp)、0); } while(errno == EAGAIN); しかし、時にはプログラムが不定期ループに入り込み、errno == ENOTCONN – milo
あなたは:errno = 0; do(recr here!)while(errno!= EAGAIN) –