@james さん > それは、Xlibだけで作成するのはやめようと言う事。 賢明な選択でしょう。 > やっぱり絶対にマニュアル不足ですかね? だと思います。この前のチャットのログや hsj さんの情報を 元にして何か本を買わないと苦しいと思います。 UNIX で GUI アプリを作るなら、Gtk+、Qt、Perl/Tk などの 選択肢もあります。入門書は結構出てます。ただ「困っても その本を読めば絶対にわかる」といったレベルまで 徹底的に 解説した本はないですね。 ただ、仕事に使えるほど熟成しているかというと、ちょっと不安ですが。 # Gtk+ や Qt って、もう API の仕様は固まったのかしら? @hsj さん > winsock-ver1のSOMAXCONNはホントに5です。ネタじゃなく。 > winsock-ver2になってはじめて0x7fffffffになりました。 なるほど。どうもです。 > サーバ側からの切断を待っている状態ですが、 > どうもこちら側から切らなければいけないようで、 HTTP/1.0 なら常にサーバ側から切ってくれますので、 while (<SOCKET>){ print } でいけるはずです。 マルチスレッドなら select で待って、 $len = read(SOCKET,$buf,8192); if ( ! $buf ){ 切断された } # $len==0 の方が better かな? てな感じでどうでしょうか。 @へにかさん > proxy経由すると、コネクションが張られっぱなしみたいなので、どうも、 > backlogが怪しいわけではない??? となると、proxyが黒ですね。 ですね。本来、proxy がやってきたクライアントをさくさく accept していれば、SOMAXCONN が 1 でも影響は出ないはずですから。 うまくマルチスレッド化できているかどうか調べてみて下さい。 なお、 > Local Address = n:8080 は、 5 というのは accept 済のコネクションと accept 前の OS がキューイング しているコネクション、両方の合計が 5 ということです。なので、 この調べ方はあくまでも目安にしかなりません。念のため。 厳密に調べたければ > あと、お使いの環境での最大接続数を調べるには、1つのポートにがんがん > 接続してみればわかると思います。 をやってみてください。 |