私はソケットに不慣れで、いくつかのepoll資料とコードを学習/読んでいます。私の質問は、epollがシステム(Linux)で利用可能な場合、epollがselect / pollを完全に置き換えることができるということですか?
ソケットプログラミングにも、実際に従うべきいくつかのパラダイムが必要だと思います。私がコードを読んでいたとき、私は「epoll」でいくつかの「選択」を見つけました:
サーバーコードは、ソケットのブロックを処理するときにselectを使用します。epoll(LT)はselectとまったく同じように動作すると思うので、epollを使用してすべてのselectを置き換えてもかまいません。
一部のレガシーコードは、epollを使用して監視します。イベントが戻った後、対応するfdでselectを使用して、読み取り/書き込みの直前に「チェック」します。この「選択」の意味がよくわかりません。
私はこれらの「選択」コードについて混乱していて、誰かが助けてくれることを願っています。