fd
rawソケット( 、select、...)を操作するためのCラッパーまたはライブラリはありますか?ロケット科学はなく、読みやすく、素敵なラッパーFD_SET
などです。
boost ::asioはC++用なので、ここでは役に立ちません。
Beejのネットワークプログラミングガイドとソケットの操作方法を知っています。自分でラップを開始する前にラッパーを探します。
関連している
fd
rawソケット( 、select、...)を操作するためのCラッパーまたはライブラリはありますか?ロケット科学はなく、読みやすく、素敵なラッパーFD_SET
などです。
boost ::asioはC++用なので、ここでは役に立ちません。
Beejのネットワークプログラミングガイドとソケットの操作方法を知っています。自分でラップを開始する前にラッパーを探します。
関連している
libdnetを見てください。詳細: http: //libdnet.sourceforge.net/
Dan Kegel (c10k 担当者) による rn を参照してください: http://www.kegel.com/rn/。poll/epoll/sigio などの複数の select に似た syscall の周りに、plain-old-c インターフェイスがあります。高い fd カウントではパフォーマンスに大きな違いがあり、最適なインターフェイス (epoll/kqueue) は移植性がありません。
rn api は epoll 風です。select のようにリスト全体を渡すのではなく、個々の fd を追加/削除するだけです。FD_SET を使用した古き良き select は、コンパイル時にソケットの数に制限され、すべての呼び出しでユーザーからカーネル空間へのリスト全体をコピーします。epoll を使用すると、100K のアイドル ソケットを待機している場合でも高速な個々の FD を追加/削除するための個別の syscall があります。
最新の Linux システムはすべて epoll をサポートする必要があります。移植性を気にしない場合は、直接使用できます。