ライブラリ
- ビルトイン (99)
- date (24)
- monitor (120)
-
net
/ ftp (24) -
net
/ http (79) - openssl (24)
-
rexml
/ document (12) - thread (12)
- time (24)
-
webrick
/ httpstatus (24)
クラス
- DateTime (24)
- Monitor (12)
-
MonitorMixin
:: ConditionVariable (60) -
Net
:: FTP (24) -
Net
:: HTTP (55) -
OpenSSL
:: SSL :: SSLContext (24) -
REXML
:: Text (12) -
Thread
:: ConditionVariable (48) - Time (39)
モジュール
- MonitorMixin (12)
- Process (24)
-
WEBrick
:: HTTPStatus (12)
キーワード
-
CLOCK
_ SECOND (12) - ConditionVariable (36)
- HTTPPreconditionFailed (12)
- HTTPPreconditionRequired (12)
- Monitor (12)
- MonitorMixin (12)
- PreconditionFailed (12)
-
RC
_ PRECONDITION _ FAILED (12) -
assign
_ in _ cond (12) - at (15)
- broadcast (24)
-
clock
_ gettime (12) - cond0 (12)
-
continue
_ timeout= (12) - iso8601 (12)
-
keep
_ alive _ timeout= (12) - new (24)
-
new
_ cond (18) -
open
_ timeout= (24) -
read
_ timeout= (24) -
ruby 1
. 6 feature (12) - second (12)
-
second
_ fraction (12) - signal (24)
-
ssl
_ timeout= (12) - timeout= (12)
- wait (24)
-
wait
_ for _ cond (6) -
wait
_ until (12) -
wait
_ while (12) -
write
_ timeout= (7) - xmlschema (12)
- 正規表現 (12)
- 演算子式 (12)
検索結果
先頭5件
-
static NODE * cond(NODE *node) (38200.0)
-
-
Monitor
# wait _ for _ cond(cond , timeout) -> bool (12314.0) -
MonitorMixin::ConditionVariable 用の内部メソッドです。
...MonitorMixin::ConditionVariable 用の内部メソッドです。
@param cond Thread::ConditionVariable を指定します。
@param timeout タイムアウトまでの秒数。指定しなかった場合はタイムアウトしません。
@return タイムアウトしたときは false を返し......ます。それ以外は true を返します。
//emlist[例][ruby]{
require 'monitor'
m = Monitor.new
cv = Thread::ConditionVariable.new
m.enter
m.wait_for_cond(cv, 1)
//}... -
Monitor
# wait _ for _ cond(cond , timeout) -> true (12314.0) -
MonitorMixin::ConditionVariable 用の内部メソッドです。
...MonitorMixin::ConditionVariable 用の内部メソッドです。
@param cond Thread::ConditionVariable を指定します。
@param timeout タイムアウトまでの秒数。指定しなかった場合はタイムアウトしません。
@return Ruby 1.9 の頃からのバグで常に true を......返します。(16608)
//emlist[例][ruby]{
require 'monitor'
m = Monitor.new
cv = Thread::ConditionVariable.new
m.enter
m.wait_for_cond(cv, 1)
//}... -
MonitorMixin
:: ConditionVariable (12016.0) -
MonitorMixin と Monitor のための 条件変数クラスです。 MonitorMixin#new_cond が返します。ユーザが MonitorMixin::ConditionVariable.new を直接呼ぶことはありません。
...MonitorMixin と Monitor のための
条件変数クラスです。
MonitorMixin#new_cond が返します。ユーザが
MonitorMixin::ConditionVariable.new を直接呼ぶことはありません。... -
Thread
:: ConditionVariable (12012.0) -
スレッドの同期機構の一つである状態変数を実現するクラスです。
...構の一つである状態変数を実現するクラスです。
以下も ConditionVariable を理解するのに参考になります。
https://ruby-doc.com/docs/ProgrammingRuby/html/tut_threads.html#UF
=== Condition Variable とは
あるスレッド A が排他領域で動いていたと......でも空くことはありません。
以上のような状況を解決するのが Condition Variable です。
スレッド a で条件(リソースが空いているかなど)が満たされるまで wait メソッドで
スレッドを止めます。他のスレッド b において条件が......です。
mutex = Mutex.new
cv = ConditionVariable.new
a = Thread.start {
mutex.synchronize {
...
while (条件が満たされない)
cv.wait(mutex)
end
...
}
}
b = Thread.start {
mutex.synchronize {... -
ConditionVariable (12000.0)
-
Alias of Thread::ConditionVariable
...Alias of Thread::ConditionVariable... -
Net
:: HTTPPreconditionFailed (12000.0) -
HTTP レスポンス 412 (Precondition Failed) を表現するクラスです。
...HTTP レスポンス 412 (Precondition Failed) を表現するクラスです。
詳しくは 7232 Section 4.2, 8144 Section 3.2 を見てください。... -
Net
:: HTTPPreconditionRequired (12000.0) -
HTTP レスポンス 428 (Precondition Required) を表現するクラスです。
...HTTP レスポンス 428 (Precondition Required) を表現するクラスです。
詳しくは 6585 を見てください。... -
WEBrick
:: HTTPStatus :: PreconditionFailed (12000.0) -
HTTP のステータスコード 412 Precondition Failed を表すクラスです。
...HTTP のステータスコード 412 Precondition Failed を表すクラスです。... -
Monitor
# new _ cond -> MonitorMixin :: ConditionVariable (9301.0) -
モニターに関連付けられた、新しい MonitorMixin::ConditionVariable を生成して返します。
...モニターに関連付けられた、新しい MonitorMixin::ConditionVariable を生成して返します。... -
MonitorMixin
# new _ cond -> MonitorMixin :: ConditionVariable (9301.0) -
モニターに関連付けられた、新しい MonitorMixin::ConditionVariable を生成して返します。
...モニターに関連付けられた、新しい MonitorMixin::ConditionVariable を生成して返します。...