[#41278] [BUG:1.9] BINARY should not be ASCII-compatible — Yugui <yugui@...>

WXVndWkbJEIkRyQ5ISMbKEIKCgo+IBskQiRHISIkKiQqJGAkTSQzJDMkXiRHJE41RE9AJEclKyVQ

15 messages 2010/05/11

[#41407] [Bug #3339] win32ole test failure — Usaku NAKAMURA <redmine@...>

Bug #3339: win32ole test failure

20 messages 2010/05/25
[#41411] Re: [Bug #3339] win32ole test failure — Masaki Suketa <masaki.suketa@...> 2010/05/25

助田です。

[#41412] Re: [Bug #3339] win32ole test failure — "U.Nakamura" <usa@...> 2010/05/25

こんにちは、なかむら(う)です。

[ruby-dev:41245] Re: MonitorMixin::ConditionVariable#wait timeout

From: Yusuke ENDOH <mame@...>
Date: 2010-05-10 03:23:25 UTC
List: ruby-dev #41245
遠藤です。

2010年5月6日23:24 Tanaka Akira <akr@fsij.org>:
> あとは clock_gettime で CLOCK_MONOTONIC ですかね。
>
> Ruby も内部的に使える場合には使っている気がします。


なるほどと思っていたのですが、CLOCK_MONOTONIC を取得してから timeout
付き wait を行うまでの間に race があることに気づきました。

システムクロック変更に対応した timeout に必要なのは、reltime 指定では
なく、CLOCK_MONOTONIC の軸における abstime の指定ではないでしょうか。


このように reltime 指定は非常に気が付きにくい race を混入させるので、
やはり入れるべきではない、という示唆のように感じます。

# timeout してすぐそのスレッドに実行権限が来ると言う保証はどうせない
# ので、相対時刻の計算の誤差くらいは気にしなくてもいいのかなあという
# 気もするのですが。難しい。

-- 
Yusuke Endoh <mame@tsg.ne.jp>

In This Thread