タグ

ブックマーク / everysick.hatenablog.com (1)

  • EchoサーバーをI/O Multiplexingに育てる - 思考録++

    グリーンスレッドの実装を考えていたらいつの間にかタイトルのようなことをやっていた。 実装した全部載せはリポジトリに置いてあるので、何を考えたかを吐き出す。 github.com simple echo echo サーバー( "hello" と受け取って "hello" と返す)のように、 クライアントからの読み込みと書き込み間でコンテキストが発生する通信のサーバーの実装を考える。 シンプルに単一な accept ループを使う場合、一つのクライアントとの読み書きを終えるまで次のクライアントとは何もできない。 read/write の処理ではブロックするし、同期的に全ての読み書きが処理される。 なので処理中に現れる新規のクライアントは listen で指定された backlog に積まれ、次の accept が来るのを待つことになる。 simple_echo.c int main(int ar

    EchoサーバーをI/O Multiplexingに育てる - 思考録++
  • 1