In article <97B55E6C-5C05-11D9-A492-000D9350318C / mva.biglobe.ne.jp>, Masatoshi SEKI <m_seki / mva.biglobe.ne.jp> writes: > 私もそう思います。 > しかしポート番号をハードコードせずに動的に獲得したとしても、 > ここで試験したいことを本当に安全に実行する方法がないようにも思います。 > > # TCPServerを一度作って閉じ、すぐに同じポート番号を獲得できる、 > # という試験だった気がします。(できない時期があったので) > > このテスト、削除しましょうか? うぅむ。そんな内容のテストだったとは。 それは本質的に race condition になるので、保証されないと考えるべきだと 思います。 > むむ。どうやったらいさぎよく失敗できるのかなあ。 > ちょっと考えてみます。 > timeoutなどを使って異常に時間がかかったら救えば良いのかしら。 timeout はテストを遅くする原因になるし、これまた本質的には確実でない方 法なので、child process の exit status を使うとか、child process が生 きているかどうかを適当な間隔で確認するとかにして欲しいです。 -- [田中 哲][たなか あきら][Tanaka Akira]