種類
- インスタンスメソッド (88)
- モジュール (11)
- 文書 (11)
ライブラリ
-
mutex
_ m (99)
モジュール
-
Mutex
_ m (88)
キーワード
-
Mutex
_ m (11) - locked? (11)
-
mu
_ lock (11) -
mu
_ locked? (11) -
mu
_ try _ lock (11) -
mu
_ unlock (11) -
ruby 1
. 6 feature (11) -
try
_ lock (11) - unlock (11)
検索結果
先頭5件
-
Mutex
_ m # lock -> () (35102.0) -
self をロックします。一度にひとつのスレッドしかロックできません。 既にロックされている mutex に対してロックを行おうとしたスレッドは ロックが解放されるまで、実行が停止されます。
self をロックします。一度にひとつのスレッドしかロックできません。
既にロックされている mutex に対してロックを行おうとしたスレッドは
ロックが解放されるまで、実行が停止されます。 -
Mutex
_ m # mu _ lock -> () (23102.0) -
self をロックします。一度にひとつのスレッドしかロックできません。 既にロックされている mutex に対してロックを行おうとしたスレッドは ロックが解放されるまで、実行が停止されます。
self をロックします。一度にひとつのスレッドしかロックできません。
既にロックされている mutex に対してロックを行おうとしたスレッドは
ロックが解放されるまで、実行が停止されます。 -
Mutex
_ m # mu _ try _ lock -> bool (23102.0) -
self をロックしようとして、成功した場合、真を返し、ロックを得ます。
self をロックしようとして、成功した場合、真を返し、ロックを得ます。
ロックできなかった場合にはブロックせず偽を返します。 -
Mutex
_ m # try _ lock -> bool (23102.0) -
self をロックしようとして、成功した場合、真を返し、ロックを得ます。
self をロックしようとして、成功した場合、真を返し、ロックを得ます。
ロックできなかった場合にはブロックせず偽を返します。 -
Mutex
_ m # locked? -> bool (23100.0) -
self がロックされている時、真を返します。
self がロックされている時、真を返します。 -
Mutex
_ m # mu _ locked? -> bool (23100.0) -
self がロックされている時、真を返します。
self がロックされている時、真を返します。 -
Mutex
_ m # mu _ unlock -> () (23100.0) -
ロックを解放します。ロック待ちになっていたスレッドの実行は再開されます。
...ロックを解放します。ロック待ちになっていたスレッドの実行は再開されます。
@raise ThreadError ロックされていない場合に unlock を呼ぶと発生します... -
Mutex
_ m # unlock -> () (23100.0) -
ロックを解放します。ロック待ちになっていたスレッドの実行は再開されます。
...ロックを解放します。ロック待ちになっていたスレッドの実行は再開されます。
@raise ThreadError ロックされていない場合に unlock を呼ぶと発生します... -
Mutex
_ m (14072.0) -
スレッド同期機構である Mutex のモジュール版です。クラスに Module#include することでそのクラスに Mutex 機能を持たせることができます。 また、普通のオブジェクトを Object#extend により Mutex にする事ができます。
...ないメソッド(Mutex_m#lock, Mutex_m#synchronize,
Mutex_m#locked?, Mutex_m#try_lock, Mutex_m#unlock)
はモジュールにincludeした場合には定義されません。
1991
=== 例
クラスに Module#include する例
require "mutex_m"
class Foo
include Mutex_m
...
end
ob......j = Foo.new
obj.synchronize do
# 危険領域(critical section)
...
end
オブジェクトに Object#extend する例
require "mutex_m"
obj = Object.new
obj.extend(Mutex_m)
obj.lock
# 危険領域(critical section)
...
obj.unlock... -
ruby 1
. 6 feature (48.0) -
ruby 1.6 feature ruby version 1.6 は安定版です。この版での変更はバグ修正がメイン になります。
...(2002-12-24) -> stable-snapshot
: 2003-01-22: errno
EAGAIN と EWOULDBLOCK が同じ値のシステムで、EWOULDBLOCK がなくなっ
ていました。現在は、このようなシステムでは、EWOULDBLOCK は、EAGAIN
として定義されています。(これは 1.6.7 と......uby 1.6.7 (2002-03-01) [i586-linux]
Errno::EAGAIN
Errno::EWOULDBLOCK
=> ruby 1.6.8 (2002-12-24) [i586-linux]
Errno::EAGAIN
-:2: uninitialized constant EWOULDBLOCK at Errno (NameError)
=> ruby 1.6.8 (2003-02-13) [i586-linux]
Err......ruby-dev:13659>))
: sync
: mutex_m
Fixed for obj.extend(Sync_m) and obj.extend(Mutex_m).((<ruby-dev:13463>))
$ ruby -v -rsocket -rmutex_m -e 's=TCPSocket.new("localhost",25); s.extend(Mutex_m)'
ruby 1.6.4 (2001-06-04) [i386-linux]
/usr/lib/ruby/1.6/mutex_m.rb:104:in `initialize': wr...