種類
- インスタンスメソッド (33)
- 文書 (33)
- クラス (22)
- 関数 (22)
- 特異メソッド (11)
ライブラリ
- ビルトイン (66)
クラス
- Mutex (2)
- Thread (33)
-
Thread
:: Mutex (9)
キーワード
-
1
. 6 . 8から1 . 8 . 0への変更点(まとめ) (11) -
NEWS for Ruby 2
. 0 . 0 (11) - ThreadError (11)
-
rb
_ thread _ stop (11) -
rb
_ thread _ wakeup (11) - run (11)
- sleep (11)
- stop (11)
- スレッド (11)
検索結果
先頭5件
-
Thread
# wakeup -> self (39131.0) -
停止状態(stop)のスレッドを実行可能状態(run)にします。
...を実行可能状態(run)にします。
@raise ThreadError 死んでいるスレッドに対して実行すると発生します。
//emlist[例][ruby]{
c = Thread.new { Thread.stop; puts "hey!" }
sleep 0.1 while c.status!='sleep'
c.wakeup
c.join
# => "hey!"
//}
@see Thread#run, Thread.stop... -
Thread (38118.0)
-
スレッドを表すクラスです。スレッドとはメモリ空間を共有して同時に実行される制御の流れです。 Thread を使うことで並行プログラミングが可能になります。
...スレッドを表すクラスです。スレッドとはメモリ空間を共有して同時に実行される制御の流れです。
Thread を使うことで並行プログラミングが可能になります。
=== 実装
ネイティブスレッドを用いて実装されていますが、......だ
しその例外で終了するスレッドを Thread#join で待っている他の
スレッドがある場合、その待っているスレッドに対して、同じ例外が再度
発生します。
begin
t = Thread.new do
Thread.pass # メインスレッドが確実にjoinす......ect や
Thread#status によって見ることができます。
p Thread.new {sleep 1} # => #<Thread:0xa039de0 sleep>
: run (実行or実行可能状態)
生成されたばかりのスレッドや Thread#run や
Thread#wakeup で起こされたスレッドはこの状態です。
Thread#join... -
Thread
# run -> self (21062.0) -
停止状態(stop)のスレッドを再開させます。 Thread#wakeup と異なりすぐにスレッドの切り替え を行います。
...レッドを再開させます。
Thread#wakeup と異なりすぐにスレッドの切り替え
を行います。
@raise ThreadError 死んでいるスレッドに対して実行すると発生します。
//emlist[例][ruby]{
a = Thread.new { puts "a"; Thread.stop; puts "c" }
sleep 0.1 while a.......status!='sleep'
puts "Got here"
a.run
a.join
# => a
# => Got here
# => c
//}
@see Thread#wakeup, Thread.stop... -
Thread
. stop -> nil (21046.0) -
他のスレッドから Thread#run メソッドで再起動されるまで、カレ ントスレッドの実行を停止します。
...ドから Thread#run メソッドで再起動されるまで、カレ
ントスレッドの実行を停止します。
//emlist[例][ruby]{
a = Thread.new { print "a"; Thread.stop; print "c" }
sleep 0.1 while a.status!='sleep'
print "b"
a.run
a.join
# => "abc"
//}
@see Thread#run, Thread#wakeup... -
VALUE rb
_ thread _ wakeup(VALUE thread) (12316.0) -
停止中のスレッド thread を再開させます。
...停止中のスレッド thread を再開させます。... -
VALUE rb
_ thread _ stop(void) (6132.0) -
現在実行中のスレッドを停止します。 他のスレッドから rb_thread_wakeup を呼ばれると再開します。
...現在実行中のスレッドを停止します。
他のスレッドから rb_thread_wakeup を呼ばれると再開します。... -
ThreadError (6052.0)
-
Thread 関連のエラーが起きたときに発生します。
...Thread 関連のエラーが起きたときに発生します。
* カレントスレッドを Thread#join しようとしたとき
* Thread#join でデッドロックしそうになったとき
* 終了したスレッドを Thread#wakeup あるいは Thread#run しようとしたとき
*......スレッドが一つしかないのに Thread.stop しようとしたとき
* Kernel.#throw がスレッド内で Kernel.#catch されないとき
* スレッドから return しようとしたとき
* イテレータを与えずにスレッドを生成しようとしたとき
* カレン... -
スレッド (3118.0)
-
スレッド スレッドとはメモリ空間を共有して同時に実行される制御の流れです。 Ruby ではスレッドはThread クラスのインスタンスとして表されます。
...スレッド
スレッドとはメモリ空間を共有して同時に実行される制御の流れです。
Ruby ではスレッドはThread クラスのインスタンスとして表されます。
=== 実装
ネイティブスレッドを用いて実装されていますが、
現在の実装......だ
しその例外で終了するスレッドを Thread#join で待っている他の
スレッドがある場合、その待っているスレッドに対して、同じ例外が再度
発生します。
begin
t = Thread.new do
Thread.pass # メインスレッドが確実にjoinす......ect や
Thread#status によって見ることができます。
p Thread.new {sleep 1} # => #<Thread:0xa039de0 sleep>
: run (実行or実行可能状態)
生成されたばかりのスレッドや Thread#run や
Thread#wakeup で起こされたスレッドはこの状態です。
Thread#join... -
Thread
:: Mutex # sleep(timeout = nil) -> Integer (3012.0) -
与えられた秒数の間ロックを解除してスリープして、実行後にまたロックします。
...秒数を返します。
@raise ThreadError 自身がカレントスレッドによってロックされていない場合に発生します。
[注意] 2.0 以降ではスリープ中でも、シグナルを受信した場合などに実行が再
開(spurious wakeup)される場合がある点に......注意してください。
//emlist[例][ruby]{
m = Mutex.new
th = Thread.new do
m.lock
m.sleep(2)
end
th.status # => "run"
sleep 1
th.status # => "sleep"
sleep 1
th.status # => false
//}... -
NEWS for Ruby 2
. 0 . 0 (144.0) -
NEWS for Ruby 2.0.0 このドキュメントは前回リリース以降のバグ修正を除くユーザーに影響のある機能の変更のリストです。
...eep
はトラップハンドラの中では使えなくなりました。そのようなときは ThreadError が発生します
* Mutex#sleep may spurious wakeup. Check after wakeup.
* NilClass
* 追加: NilClass#to_h 空のハッシュを返します
* ObjectSpace::WeakMap......加(起動時にチェックします):
* RUBY_THREAD_VM_STACK_SIZE: vm stack size used at thread creation.
default: 128KB (32bit CPU) or 256KB (64bit CPU).
* RUBY_THREAD_MACHINE_STACK_SIZE: machine stack size used at thread
creation. default: 512KB or 1024KB.
* RUB......す
* Thread
* 追加: Thread#thread_variable_get スレッドローカルな変数を取得します
(these are different than Fiber local variables).
* 追加: Thread#thread_variable_set スレッドローカルな変数をセットします
* 追加: Thread#thread_variables...