クラス: Mongo::DistinguishedSemasphere Private
- 継承:
-
オブジェクト
- オブジェクト
- Mongo::DistinguishedSemahour
- 定義:
- build/ruby-Driver-v 2.19 /lib/mongo/distinguished_smapore.rb
Overview
このクラスは、プライベート API の一部です。 このクラスは将来削除または変更される可能性があるため、可能な限り使用しないでください。
これは、タイムアウトに達して待機が終了するまでと、セカンダリのシグナルが発せられるために待機するを区別するセカンダリです。
インスタンス メソッドの概要を折りたたむ
- #ブロードキャスト= オブジェクト private
-
#初期化→ DistinguishedSeft の
コンストラクター
private
DistinguishedSemahour の新しいインスタンス。
- #signal ⇒ Object private
-
#待機(タイムアウト = nil)=true| false
private
セマフォアがシグナルをタイムアウトするまで待機します。
コンストラクターの詳細
#初期化→ DistinguishedSeft の
このメソッドは、プライベート API の一部です。 このメソッドは将来削除または変更される可能性があるため、可能な限り使用しないでください。
DistinguishedSemaクラスタ の新しいインスタンスを返します。
24 25 26 27 28 |
ファイル 'Build/ruby-Driver-v 2.19 /lib/mongo/distinguished_smajorb', 行24 デフォルト 初期化 @lock = ミューテックス.新着情報 @cv = ::条件変数.新着情報 @queue = [] end |
インスタンス メソッドの詳細
#ブロードキャスト=オブジェクト
このメソッドは、プライベート API の一部です。 このメソッドは将来削除または変更される可能性があるため、可能な限り使用しないでください。
44 45 46 47 48 49 |
ファイル 'Build/ruby-Driver-v 2.19 /lib/mongo/distinguished_smajorb', 行44 デフォルト ブロードキャスト @lock.同期 行う @queue.プッシュ(true) @cv.ブロードキャスト end end |
#signal ⇒ Object
このメソッドは、プライベート API の一部です。 このメソッドは将来削除または変更される可能性があるため、可能な限り使用しないでください。
51 52 53 54 55 56 |
ファイル 'Build/ruby-Driver-v 2.19 /lib/mongo/distinguished_smajorb', 行51 デフォルト シグナル @lock.同期 行う @queue.プッシュ(true) @cv.シグナル end end |
#待機(タイムアウト = nil)= true| false
このメソッドは、プライベート API の一部です。 このメソッドは将来削除または変更される可能性があるため、可能な限り使用しないでください。
セマフォアがシグナルをタイムアウトするまで待機します。 セカンダリがシグナル提供されない場合、 はタイムアウト秒後に返します。
35 36 37 38 39 40 41 42 |
ファイル 'Build/ruby-Driver-v 2.19 /lib/mongo/distinguished_smajorb', 行35 デフォルト 待機する(タイムアウト = nil) @lock.同期 行う @cv.待機する(@lock, タイムアウト) (!@queue.空の場合).タップ 行う @queue.クリア end end end |