キーワード
-
1
. 6 . 8から1 . 8 . 0への変更点(まとめ) (11) -
ruby 1
. 6 feature (11) -
ruby 1
. 8 . 5 feature (11) - 終了処理 (11)
検索結果
-
スレッド (15318.0)
-
スレッド スレッドとはメモリ空間を共有して同時に実行される制御の流れです。 Ruby ではスレッドはThread クラスのインスタンスとして表されます。
...スレッド
スレッドとはメモリ空間を共有して同時に実行される制御の流れです。
Ruby ではスレッドはThread クラスのインスタンスとして表されます。
=== 実装
ネイティブスレッドを用いて実装されていますが、
現在の実装......おり、同時に実行される
ネイティブスレッドは常にひとつです。
ただし、IO 関連のブロックする可能性があるシステムコールを行う場合には
GVL を解放します。その場合にはスレッドは同時に実行され得ます。
また拡張ラ......リから GVL を操作できるので、複数のスレッドを
同時に実行するような拡張ライブラリは作成可能です。
=== スケジューリング
Ruby のスレッドスケジューリングはネイティブスレッドのそれを利用しています。
よって詳細... -
ruby 1
. 6 feature (61.0) -
ruby 1.6 feature ruby version 1.6 は安定版です。この版での変更はバグ修正がメイン になります。
...n32:366>))
: 2002-09-12: Thread.status (?)
シグナルを trap でトラップしたときにスレッドの状態を保持していなかっ
たためシグナルに割り込まれたスレッドの状態がおかしくなることがありま
した((<ruby-talk:40337>)), ((<ruby-core:0001......) [i586-linux]
/tmp/c:/file
=> ruby 1.6.7 (2002-08-21) [i586-linux]
c:/file
: 2002-08-19 Thread (win)
Ruby のスレッドと Win32 の構造化例外(Win32 API からのコールバッ
クを含む)を同時に使うと落ちてしまう不具合が修正さ......ux]
=> -:1: parse error
%w!a! "b"
^
ruby 1.6.5 (2001-10-10) [i586-linux]
: Thread
Thread#status が aborting 状態に対して "run" を返していたバグが修正
されました。また、Thread#priority = val が val でなく self を返し... -
1
. 6 . 8から1 . 8 . 0への変更点(まとめ) (49.0) -
1.6.8から1.8.0への変更点(まとめ) * ((<1.6.8から1.8.0への変更点(まとめ)/インタプリタの変更>)) * ((<1.6.8から1.8.0への変更点(まとめ)/追加されたクラス/モジュール>)) * ((<1.6.8から1.8.0への変更点(まとめ)/追加されたメソッド>)) * ((<1.6.8から1.8.0への変更点(まとめ)/追加された定数>)) * ((<1.6.8から1.8.0への変更点(まとめ)/拡張されたクラス/メソッド(互換性のある変更)>)) * ((<1.6.8から1.8.0への変更点(まとめ)/変更されたクラス/メソッド(互換性のない変更)>)) * ((<1.6.8から1.8.0への変更点(まとめ)/文法の変更>)) * ((<1.6.8から1.8.0への変更点(まとめ)/正規表現>)) * ((<1.6.8から1.8.0への変更点(まとめ)/Marshal>)) * ((<1.6.8から1.8.0への変更点(まとめ)/Windows 対応>)) * ((<1.6.8から1.8.0への変更点(まとめ)/廃止された(される予定の)機能>)) * ((<1.6.8から1.8.0への変更点(まとめ)/ライブラリ>)) * ((<1.6.8から1.8.0への変更点(まとめ)/拡張ライブラリAPI>)) * ((<1.6.8から1.8.0への変更点(まとめ)/バグ修正>)) * ((<1.6.8から1.8.0への変更点(まとめ)/サポートプラットフォームの追加>))
...ocess/Process.maxgroups=>)) [new]
追加
: ((<Process/Process.detach>)) [new]
追加
: ((<Process/Process.abort>)) [new]
: ((<Process/Process.exit>)) [new]
追加。関数 abort, exit と同じ。
: ((<Process/Process.waitall>)) [new]
追加
: ((<Process::Status#pid|Process::St......ビットの繰り返しをあらわす ".." は、付加
されないようになりました。((<ruby-dev:16522>))
: ((<組み込み関数/abort>)) [compat]
終了メッセージを指定できるようになりました。
=== Array
: ((<Array#first|Array/first>)) [compat]
: ((<Array#la......((<Thread#join|Thread/join>)) [compat]
スレッドを待ち合わせる時間を limit で指定できるようになりました。
: ((<Thread/Thread.list>)) [compat]
: ((<ThreadGroup#list|ThreadGroup/list>)) [compat]
終了中(aborting)のスレッドもリストに含まれるように... -
終了処理 (39.0)
-
終了処理 Ruby はスクリプトの終端に達した場合や捕捉していない例外が発生した場 合に終了します(関数 Kernel.#exit や Kernel.#abort 、メインスレッドに対する Thread.kill などは SystemExit 例外を発生させます)。終了時には以下 の処理が順に実行されます。
...終了します(関数 Kernel.#exit や Kernel.#abort
、メインスレッドに対する Thread.kill などは
SystemExit 例外を発生させます)。終了時には以下
の処理が順に実行されます。
(1) すべてのスレッドを Thread.kill する。
(1) Ruby の擬似シグ... -
ruby 1
. 8 . 5 feature (19.0) -
ruby 1.8.5 feature ruby 1.8.4 から ruby 1.8.5 までの変更点です。
...File#flock [bug]
cygwin版でRubyのスレッドが複数ある状態で、ロックせずにflock(File::LOCK_UN)すると
止まってしまっていたのが修正されました。
=== 2006-02-04
: File#flock [bug]
mswin32版でRubyのスレッドが複数ある状態で、ロックせ......05-12-29
: Thread [compat]
他から操作されない限り動き出さないにもかかわらず他から参照されていない thread は abort されるようになりました
((<ruby-dev:28154>))
== 参考
* ((<Changes in Ruby 1.8.5|URL:http://eigenclass.org/hiki.rb?ruby+1.8.5+chang...