牧戸です。 > > select で待っている間に、システムの時刻を過去にもどすと、 > そんな無茶なぁ。;-( ちなみに、定期的に正しい時刻にあわせるような処理を書いてテスト していたら、ruby のプログラムの挙動が変になったように見えたので、、 調べてみたら rubyのselect()でした。 > > 動作的には、システム時刻にかかわらず10秒で抜けてくるのが、正しい > > と思うのですがいかがでしょう? > そもそも一般論として、システム・クロックを勝手に変更された場合にまで、 > オペレーティング・システムのシステムコール相当のものの動作が保証されて > いるもんでしょうか。 > > > #UNIX版では、10秒で抜けてきますね。 > select()のオペレーティング・システム内での実装の違いでしょう。UNIXでは > カーネル内のtimeout()相当を使用するため、システム・クロックには直接影 > 響を受けなかったのでしょう。システム・クロックに依存してselect()の実装 > をしているオペレーティング・システムがあってもおかしくはないので、責め > ることはできません。 > > いずれにしろrubyでどうなる問題ではなく、オペレーティング・システムの実 > 装の問題と考えますが、如何でしょう? うーむ、まさにOS毎のselect()の実装の違い、というところですか。 とすると、確かにrubyの仕様うんぬんではないですね。失礼しました。 不変のタイミングを取るところだけは、別モジュールに書いて対応します。 ---- Weathernews Inc. 牧戸 浩之 makimaki / wni.co.jp