nogの日記: jIRC: 自動JOINの処理 2
日記 by
nog
サーバに接続後、使用したいニックが既に使われている場合、自動JOINの処理が無視されていた。具体的には、サーバに接続後USERとNICKコマンドを送る訳だが、何も考えないでそのままJOINコマンドを送った場合、ニックが使われているとニューメリックリプライ433を返し、他に使われていないニックをNICKコマンドで送る必要がある。この間は認証に成功してないのでJOINコマンドを送っても無視されるわけだ。
最初はポーリングでちゃんと認証できたかどうか(この定義も難しいと思う。サーバにもよるだろうがニューメリックリプライ001がかえってきたら認証できた物だとしている)調べて自動JOINの処理を行い、思っているように動作したのでこれをwait とnotifyで書き換えてみた。
waitとnotifyはいまいち自信がもてないので心配だが、ポーリングで無駄にマシンが重くなるのもいやだしPowerBook G4はものすごく熱くなるので積極的に使ってみようと思っている。こんなのJava始めてからしょっぱなから極めるべきなんだろうなぁ。
最初はポーリングでちゃんと認証できたかどうか(この定義も難しいと思う。サーバにもよるだろうがニューメリックリプライ001がかえってきたら認証できた物だとしている)調べて自動JOINの処理を行い、思っているように動作したのでこれをwait とnotifyで書き換えてみた。
waitとnotifyはいまいち自信がもてないので心配だが、ポーリングで無駄にマシンが重くなるのもいやだしPowerBook G4はものすごく熱くなるので積極的に使ってみようと思っている。こんなのJava始めてからしょっぱなから極めるべきなんだろうなぁ。
Threadなら (スコア:0)
古い本ですが、僕はこの本でスレッド関連を勉強しました。
http://www.oreilly.co.jp/BOOK/jthread/
Threadクラス自体、非推奨メソッドが出てきたりして読み替える必要ありますが、
良書ですよ。
Re:Threadなら (スコア:1)
もってます(汗
僕もこの本でスレッド関連を勉強しました。が、waitとnotifyは実際にやってみて、すぐ思惑通りに動かなかったので後回しにしてたんですよ。使わなくてもそれなりに動いてたので。
いやぁ、はずかしい ^-^;;
今気がついたんですが、Pnutsの戸松 豊和さん監訳ですねぇ。 PnutsのMLではとんちんかんな投稿ばっかりしてたなぁ、、、