NetServerでRead

[Mona PJ Wiki:mones2/22.ネットワークサーバ/03.uIPのサーバーを作ろう簡単なRead]


NetServerの深遠部でのReadインターフェースの実装がすんだ。(Windows上)

    server->SetListen(9000); // ポート9000をListen
     Buffer* buffer = server->Read(9000); // ポート9000からバッファを読みこむ


こんな感じで、パケットを読む。
これは深い部分でのインターフェースなのでRead(ポート番号)となっているが、実際に提供されるユーザー側のAPIではOpenしてハンドルを返して、読み込むとパケット到着までブロックされるみたいな感じになるかな。


一応今回は、Windowsのスレッド機能を使って、Serverを使う側のテストコードも組み込んでいるので、

./uip.exe

と実行してサーバを起動しておいて、別のターミナルから

wget http://192.168.11.200:9000

というようにアクセスすると、こんなのが表示されます。

GET / HTTP/1.0
User-Agent: Wget/1.9.1
Host: 192.168.11.200:9000
Accept: */*
Connection: Keep-Alive


次なる課題としては

  • 使用しているWindows MutexをMonaと同じインターフェースでラップ
  • Writeの実装

あたりかな。