別のキーワード
ライブラリ
クラス
-
DRb
:: DRbServer (1) - Exception (1)
- Fiber (2)
- IO (10)
-
IRB
:: Context (1) -
Net
:: IMAP (2) -
Net
:: IMAP :: ThreadMember (2) - Shell (5)
- Socket (1)
- Thread (35)
-
Thread
:: Backtrace :: Location (7) -
Thread
:: ConditionVariable (4) -
Thread
:: Mutex (4) -
Thread
:: Queue (5) -
Thread
:: SizedQueue (7) - ThreadGroup (1)
- ThreadsWait (3)
- TracePoint (1)
- Tracer (2)
-
WEBrick
:: GenericServer (1)
キーワード
-
$ -d (1) -
$ DEBUG (1) -
1
. 6 . 8から1 . 8 . 0への変更点(まとめ) (1) - << (1)
-
CS
_ GNU _ LIBPTHREAD _ VERSION (1) -
CS
_ POSIX _ V7 _ THREADS _ CFLAGS (1) -
CS
_ POSIX _ V7 _ THREADS _ LDFLAGS (1) - ConditionVariable (2)
- Context (1)
- DEBUG (1)
- DEBUG= (1)
- Fiber (1)
- Location (1)
-
NEWS for Ruby 2
. 0 . 0 (1) -
NEWS for Ruby 2
. 2 . 0 (1) -
NEWS for Ruby 2
. 3 . 0 (1) -
NEWS for Ruby 2
. 4 . 0 (1) -
NEWS for Ruby 2
. 5 . 0 (1) - Ruby用語集 (1)
-
SC
_ 2 _ C _ BIND (1) -
SC
_ 2 _ PBS (1) -
SC
_ 2 _ PBS _ ACCOUNTING (1) -
SC
_ 2 _ PBS _ CHECKPOINT (1) -
SC
_ 2 _ PBS _ LOCATE (1) -
SC
_ 2 _ PBS _ MESSAGE (1) -
SC
_ 2 _ PBS _ TRACK (1) -
SC
_ BARRIERS (1) -
SC
_ BC _ BASE _ MAX (1) -
SC
_ BC _ DIM _ MAX (1) -
SC
_ BC _ SCALE _ MAX (1) -
SC
_ BC _ STRING _ MAX (1) -
SC
_ JOB _ CONTROL (1) -
SC
_ SHARED _ MEMORY _ OBJECTS (1) -
SC
_ THREAD _ ROBUST _ PRIO _ INHERIT (1) -
SC
_ THREAD _ ROBUST _ PRIO _ PROTECT (1) -
SC
_ TYPED _ MEMORY _ OBJECTS (1) -
SC
_ V6 _ ILP32 _ OFFBIG (1) -
SC
_ V6 _ LPBIG _ OFFBIG (1) -
SC
_ V7 _ ILP32 _ OFFBIG (1) -
SC
_ V7 _ LPBIG _ OFFBIG (1) - ThreadMember (1)
- [] (1)
-
abort
_ on _ exception (2) -
abort
_ on _ exception= (2) -
absolute
_ path (1) -
add
_ trace _ func (1) - alive? (1)
- application= (1)
- backtrace (1)
-
backtrace
_ locations (3) -
base
_ label (1) - broadcast (1)
-
caller
_ locations (2) - children (1)
- closed? (1)
-
count
_ tdata _ objects (1) - debug (1)
-
debug
_ output _ lock (1) -
debug
_ output _ locked? (1) -
debug
_ output _ synchronize (1) -
debug
_ output _ try _ lock (1) -
debug
_ output _ unlock (1) - deq (2)
-
display
_ thread _ id (1) -
display
_ thread _ id? (1) - drb (1)
-
drb
/ extservm (1) -
drb
/ gw (1) - dump (2)
- empty? (3)
- enclosed? (1)
- enq (1)
- eof (1)
- eof? (1)
- exclusive (1)
- fetch (1)
- finished? (1)
-
handle
_ interrupt (1) - inspect (2)
- irb (1)
- key? (1)
- keys (1)
- label (1)
- lineno (1)
- locked? (1)
- new (2)
-
next
_ wait (1) - owned? (1)
- path (1)
-
pending
_ interrupt? (2) - pipe (8)
- pop (2)
- priority (1)
- priority= (1)
- push (1)
- raise (1)
-
rb
_ gc _ mark _ threads (1) -
rb
_ thread _ abort _ exc (1) -
rb
_ thread _ abort _ exc _ set (1) -
rb
_ thread _ alive _ p (1) -
rb
_ thread _ alloc (1) -
rb
_ thread _ alone (1) -
rb
_ thread _ aref (1) -
rb
_ thread _ aset (1) -
rb
_ thread _ atfork (1) -
rb
_ thread _ check (1) -
rb
_ thread _ cleanup (1) -
rb
_ thread _ create (1) -
rb
_ thread _ critical _ get (1) -
rb
_ thread _ critical _ set (1) -
rb
_ thread _ current (1) -
rb
_ thread _ dead (1) -
rb
_ thread _ deadlock (1) -
rb
_ thread _ exit (1) -
rb
_ thread _ fd _ close (1) -
rb
_ thread _ fd _ writable (1) -
rb
_ thread _ initialize (1) -
rb
_ thread _ inspect (1) -
rb
_ thread _ interrupt (1) -
rb
_ thread _ join (1) -
rb
_ thread _ join _ m (1) -
rb
_ thread _ key _ p (1) -
rb
_ thread _ keys (1) -
rb
_ thread _ kill (1) -
rb
_ thread _ list (1) -
rb
_ thread _ local _ aref (1) -
rb
_ thread _ local _ aset (1) -
rb
_ thread _ main (1) -
rb
_ thread _ pass (1) -
rb
_ thread _ priority (1) -
rb
_ thread _ priority _ set (1) -
rb
_ thread _ raise (1) -
rb
_ thread _ raise _ m (1) -
rb
_ thread _ ready (1) -
rb
_ thread _ remove (1) -
rb
_ thread _ restore _ context (1) -
rb
_ thread _ run (1) -
rb
_ thread _ s _ abort _ exc (1) -
rb
_ thread _ s _ abort _ exc _ set (1) -
rb
_ thread _ s _ kill (1) -
rb
_ thread _ s _ new (1) -
rb
_ thread _ safe _ level (1) -
rb
_ thread _ save _ context (1) -
rb
_ thread _ schedule (1) -
rb
_ thread _ signal _ raise (1) -
rb
_ thread _ sleep (1) -
rb
_ thread _ sleep _ forever (1) -
rb
_ thread _ start (1) -
rb
_ thread _ start _ 0 (1) -
rb
_ thread _ start _ timer (1) -
rb
_ thread _ status (1) -
rb
_ thread _ stop (1) -
rb
_ thread _ stop _ p (1) -
rb
_ thread _ stop _ timer (1) -
rb
_ thread _ trap _ eval (1) -
rb
_ thread _ value (1) -
rb
_ thread _ wait _ fd (1) -
rb
_ thread _ wait _ for (1) -
rb
_ thread _ wait _ other _ threads (1) -
rb
_ thread _ wakeup (1) -
rb
_ thread _ yield (1) -
report
_ on _ exception (2) -
report
_ on _ exception= (1) - resume (1)
-
ruby 1
. 6 feature (1) -
ruby 1
. 8 . 3 feature (1) -
ruby 1
. 8 . 4 feature (1) -
ruby 1
. 8 . 5 feature (1) - seqno (1)
-
set
_ trace _ func (1) - shift (2)
- signal (1)
-
stack
_ extend (1) - status (1)
- stop (1)
- stop? (1)
- synchronize (1)
-
thread
_ free (1) -
thread
_ mark (1) -
thread
_ variable? (1) -
thread
_ variable _ get (1) -
thread
_ variable _ set (1) - timeout (4)
-
to
_ s (2) - tokens (1)
- transfer (1)
-
try
_ lock (1) -
uid
_ thread (1) - unix (1)
- value (1)
- wait (1)
- yaml (1)
- オブジェクト指向スクリプト言語 Ruby リファレンスマニュアル (1)
検索結果
先頭5件
-
Thread
# thread _ variable _ get(key) -> object | nil (63856.0) -
引数 key で指定した名前のスレッドローカル変数を返します。
引数 key で指定した名前のスレッドローカル変数を返します。
[注意]: Thread#[] でセットしたローカル変数(Fiber ローカル変数)と
異なり、Fiber を切り替えても同じ変数を返す事に注意してください。
例:
Thread.new {
Thread.current.thread_variable_set("foo", "bar") # スレッドローカル
Thread.current["foo"] = "bar" # Fiber ローカル
Fiber.new {
Fiber.yield ... -
Thread
# thread _ variable _ set(key , value) (63820.0) -
引数 key で指定した名前のスレッドローカル変数に引数 value をセットしま す。
引数 key で指定した名前のスレッドローカル変数に引数 value をセットしま
す。
[注意]: Thread#[] でセットしたローカル変数(Fiber ローカル変数)と
異なり、セットした変数は Fiber を切り替えても共通で使える事に注意してく
ださい。
//emlist[例][ruby]{
thr = Thread.new do
Thread.current.thread_variable_set(:cat, 'meow')
Thread.current.thread_variable_set("dog", 'woof')
end
thr.join ... -
Thread
# thread _ variable?(key) -> bool (63748.0) -
引数 key で指定した名前のスレッドローカル変数が存在する場合に true、そ うでない場合に false を返します。
引数 key で指定した名前のスレッドローカル変数が存在する場合に true、そ
うでない場合に false を返します。
@param key 変数名を String か Symbol で指定します。
me = Thread.current
me.thread_variable_set(:oliver, "a")
me.thread_variable?(:oliver) # => true
me.thread_variable?(:stanley) # => false
[注意]: Thread#[] でセットしたローカル変数(Fiber ローカル... -
IRB
:: Context # thread -> Thread (63625.0) -
現在のスレッドを返します。
現在のスレッドを返します。
@see Thread.current -
DRb
. # thread -> Thread|nil (63607.0) -
プライマリサーバが動作しているスレッドを返します。
プライマリサーバが動作しているスレッドを返します。
プライマリサーバが存在しない場合は nil を返します。
@see DRb.#primary_server -
DRb
:: DRbServer # thread -> Thread (63607.0) -
サーバのメインスレッドを返します。
サーバのメインスレッドを返します。
このスレッドはクライアントからの接続を受け付けるスレッドであって、
クライアントへの応答をするスレッドではありません。 -
Net
:: IMAP # thread(algorithm , search _ keys , charset) -> [Net :: IMAP :: ThreadMember] (54988.0) -
THREADコマンドを送り、メールボックスを検索した結果を スレッド形式の木構造で返します。
THREADコマンドを送り、メールボックスを検索した結果を
スレッド形式の木構造で返します。
THREAD コマンドは 5256 で定義されています。
詳しくはそちらを参照してください。
このコマンドは Net::IMAP#capability の返り値を見ることで
利用可能かどうか判断できます。
algorithm は木構造を決定するためのアルゴリズムを指定します。
以下の2つが利用可能です。
* "ORDEREDSUBJECT" subjectを使って平坦に区切るだけ
* "REFERENCES" どのメッセージに返事をしているかを見て木構造を作る
詳しくは 5256 を見てく... -
static void rb
_ thread _ wait _ other _ threads(void) (54901.0) -
-
Thread
# backtrace _ locations(range) -> [Thread :: Backtrace :: Location] | nil (46045.0) -
スレッドの現在のバックトレースを Thread::Backtrace::Location の配 列で返します。
スレッドの現在のバックトレースを Thread::Backtrace::Location の配
列で返します。
引数で指定した値が範囲外の場合、スレッドがすでに終了している場合は nil
を返します。
@param start 開始フレームの位置を数値で指定します。
@param length 取得するフレームの個数を指定します。
@param range 取得したいフレームの範囲を示す Range オブジェクトを指定します。
Kernel.#caller_locations と似ていますが、本メソッドは self に限定
した情報を返します。
//emlist[例][ruby]... -
Thread
# backtrace _ locations(start = 0 , length = nil) -> [Thread :: Backtrace :: Location] | nil (46045.0) -
スレッドの現在のバックトレースを Thread::Backtrace::Location の配 列で返します。
スレッドの現在のバックトレースを Thread::Backtrace::Location の配
列で返します。
引数で指定した値が範囲外の場合、スレッドがすでに終了している場合は nil
を返します。
@param start 開始フレームの位置を数値で指定します。
@param length 取得するフレームの個数を指定します。
@param range 取得したいフレームの範囲を示す Range オブジェクトを指定します。
Kernel.#caller_locations と似ていますが、本メソッドは self に限定
した情報を返します。
//emlist[例][ruby]... -
Thread
# abort _ on _ exception -> bool (45757.0) -
真の場合、そのスレッドが例外によって終了した時に、インタプリタ 全体を中断させます。false の場合、あるスレッドで起こった例 外は、Thread#join などで検出されない限りそのスレッ ドだけをなにも警告を出さずに終了させます。
真の場合、そのスレッドが例外によって終了した時に、インタプリタ
全体を中断させます。false の場合、あるスレッドで起こった例
外は、Thread#join などで検出されない限りそのスレッ
ドだけをなにも警告を出さずに終了させます。
デフォルトは偽です。c:Thread#exceptionを参照してください。
@param newstate 自身を実行中に例外発生した場合、インタプリタ全体を終了させるかどうかを true か false で指定します。
//emlist[例][ruby]{
thread = Thread.new { sleep 1 }
thread.abort_o... -
Thread
. abort _ on _ exception -> bool (45721.0) -
真の時は、いずれかのスレッドが例外によって終了した時に、インタプリタ 全体を中断させます。false の場合、あるスレッドで起こった例外は、Thread#join などで検出されない限りそのスレッドだけをなにも警告を出さずに終了させます。
真の時は、いずれかのスレッドが例外によって終了した時に、インタプリタ
全体を中断させます。false の場合、あるスレッドで起こった例外は、Thread#join
などで検出されない限りそのスレッドだけをなにも警告を出さずに終了させます。
デフォルトは false です。
c:Thread#exceptionを参照してください。
@param newstate スレッド実行中に例外発生した場合、インタプリタ全体を終了させるかどうかを true か false で指定します。
//emlist[例][ruby]{
Thread.abort_on_exception # => false... -
Thread
# abort _ on _ exception=(newstate) (45457.0) -
真の場合、そのスレッドが例外によって終了した時に、インタプリタ 全体を中断させます。false の場合、あるスレッドで起こった例 外は、Thread#join などで検出されない限りそのスレッ ドだけをなにも警告を出さずに終了させます。
真の場合、そのスレッドが例外によって終了した時に、インタプリタ
全体を中断させます。false の場合、あるスレッドで起こった例
外は、Thread#join などで検出されない限りそのスレッ
ドだけをなにも警告を出さずに終了させます。
デフォルトは偽です。c:Thread#exceptionを参照してください。
@param newstate 自身を実行中に例外発生した場合、インタプリタ全体を終了させるかどうかを true か false で指定します。
//emlist[例][ruby]{
thread = Thread.new { sleep 1 }
thread.abort_o... -
Thread
. abort _ on _ exception=(newstate) (45421.0) -
真の時は、いずれかのスレッドが例外によって終了した時に、インタプリタ 全体を中断させます。false の場合、あるスレッドで起こった例外は、Thread#join などで検出されない限りそのスレッドだけをなにも警告を出さずに終了させます。
真の時は、いずれかのスレッドが例外によって終了した時に、インタプリタ
全体を中断させます。false の場合、あるスレッドで起こった例外は、Thread#join
などで検出されない限りそのスレッドだけをなにも警告を出さずに終了させます。
デフォルトは false です。
c:Thread#exceptionを参照してください。
@param newstate スレッド実行中に例外発生した場合、インタプリタ全体を終了させるかどうかを true か false で指定します。
//emlist[例][ruby]{
Thread.abort_on_exception # => false... -
Thread
. DEBUG=(val) (45391.0) -
スレッドのデバッグレベルを val に設定します。
スレッドのデバッグレベルを val に設定します。
val が 真 のときは Integer に変換してから設定します。
偽 のときは 0 を設定します。
使用するためには、THREAD_DEBUG を -1 にして Ruby をコンパイルする必要が
あります。
//emlist[例][ruby]{
Thread.DEBUG # => 0
Thread.DEBUG = 1
Thread.DEBUG # => 1
//}
@see Thread.DEBUG -
Thread
. DEBUG -> Integer (45355.0) -
スレッドのデバッグレベルを返します。
スレッドのデバッグレベルを返します。
スレッドのデバッグレベルが 0 のときはなにもしません。
それ以外の場合は、スレッドのデバッグログを標準出力に出力します。
初期値は 0 です。
使用するためには、THREAD_DEBUG を -1 にして Ruby をコンパイルする必要が
あります。
//emlist[例][ruby]{
Thread.DEBUG # => 0
//}
@see Thread.DEBUG= -
Thread
# backtrace -> [String] | nil (45337.0) -
スレッドの現在のバックトレースを返します。
スレッドの現在のバックトレースを返します。
スレッドがすでに終了している場合は nil を返します。
//emlist[例][ruby]{
class C1
def m1
sleep 5
end
def m2
m1
end
end
th = Thread.new {C1.new.m2; Thread.stop}
th.backtrace
# => [
# [0] "(irb):3:in `sleep'",
# [1] "(irb):3:in `m1'",
# [2] "(irb):6:in `m2'",
# [3] ... -
static VALUE rb
_ thread _ raise(int argc , VALUE *argv , rb _ thread _ t th) (37201.0) -
-
static VALUE rb
_ thread _ start _ 0(VALUE (*fn)() , void *arg , rb _ thread _ t th _ arg) (37201.0) -
-
static VALUE rb
_ thread _ yield(VALUE arg , rb _ thread _ t th) (37201.0) -
-
static int rb
_ thread _ dead(rb _ thread _ t th) (37201.0) -
-
static int rb
_ thread _ join(rb _ thread _ t th , double limit) (37201.0) -
-
static rb
_ thread _ t rb _ thread _ alloc(VALUE klass) (37201.0) -
-
static rb
_ thread _ t rb _ thread _ check(VALUE data) (37201.0) -
-
static void rb
_ thread _ ready(rb _ thread _ t th) (37201.0) -
-
static void rb
_ thread _ remove(rb _ thread _ t th) (37201.0) -
-
static void rb
_ thread _ restore _ context(rb _ thread _ t th , int exit) (37201.0) -
スレッドを切り替えるにあたって、切り替え先のスレッド th の コンテキストを評価器に復帰します。
スレッドを切り替えるにあたって、切り替え先のスレッド th の
コンテキストを評価器に復帰します。 -
static void rb
_ thread _ save _ context(rb _ thread _ t th) (37201.0) -
スレッドを切り替えるにあたって、現在実行中のスレッド th の コンテキストを評価器から th に退避します。
スレッドを切り替えるにあたって、現在実行中のスレッド th の
コンテキストを評価器から th に退避します。 -
VALUE rb
_ thread _ run(VALUE thread) (36949.0) -
スレッド thread に実行権を渡します。
スレッド thread に実行権を渡します。 -
VALUE rb
_ thread _ wakeup(VALUE thread) (36949.0) -
停止中のスレッド thread を再開させます。
停止中のスレッド thread を再開させます。 -
VALUE rb
_ thread _ local _ aref(VALUE thread , ID id) (36901.0) -
-
VALUE rb
_ thread _ local _ aset(VALUE thread , ID id , VALUE val) (36901.0) -
-
static VALUE rb
_ thread _ abort _ exc(VALUE thread) (36901.0) -
-
static VALUE rb
_ thread _ abort _ exc _ set(VALUE thread , VALUE val) (36901.0) -
-
static VALUE rb
_ thread _ alive _ p(VALUE thread) (36901.0) -
-
static VALUE rb
_ thread _ aref(VALUE thread , VALUE id) (36901.0) -
-
static VALUE rb
_ thread _ aset(VALUE thread , VALUE id , VALUE val) (36901.0) -
-
static VALUE rb
_ thread _ initialize(VALUE thread , VALUE args) (36901.0) -
-
static VALUE rb
_ thread _ inspect(VALUE thread) (36901.0) -
-
static VALUE rb
_ thread _ join _ m(int argc , VALUE *argv , VALUE thread) (36901.0) -
-
static VALUE rb
_ thread _ key _ p(VALUE thread , VALUE id) (36901.0) -
-
static VALUE rb
_ thread _ keys(VALUE thread) (36901.0) -
-
static VALUE rb
_ thread _ kill(VALUE thread) (36901.0) -
-
static VALUE rb
_ thread _ priority(VALUE thread) (36901.0) -
-
static VALUE rb
_ thread _ priority _ set(VALUE thread , VALUE prio) (36901.0) -
-
static VALUE rb
_ thread _ raise _ m(int argc , VALUE *argv , VALUE thread) (36901.0) -
-
static VALUE rb
_ thread _ safe _ level(VALUE thread) (36901.0) -
-
static VALUE rb
_ thread _ status(VALUE thread) (36901.0) -
-
static VALUE rb
_ thread _ stop _ p(VALUE thread) (36901.0) -
-
static VALUE rb
_ thread _ value(VALUE thread) (36901.0) -
-
VALUE rb
_ thread _ stop(void) (36649.0) -
現在実行中のスレッドを停止します。 他のスレッドから rb_thread_wakeup を呼ばれると再開します。
現在実行中のスレッドを停止します。
他のスレッドから rb_thread_wakeup を呼ばれると再開します。 -
static VALUE rb
_ thread _ pass(void) (36649.0) -
Thread#pass の実体。
Thread#pass の実体。 -
void rb
_ thread _ schedule(void) (36637.0) -
他のスレッドに実行権を渡します。 対象の特定はできません。
他のスレッドに実行権を渡します。
対象の特定はできません。
@see rb_thread_wait_fd, rb_thread_wait_for -
VALUE rb
_ thread _ create(fn , arg) (36601.0) -
VALUE (*fn)(); void *arg;
VALUE (*fn)();
void *arg; -
VALUE rb
_ thread _ current(void) (36601.0) -
現在実行中のスレッドを返します。
現在実行中のスレッドを返します。 -
VALUE rb
_ thread _ list(void) (36601.0) -
-
VALUE rb
_ thread _ main(void) (36601.0) -
メインスレッド (プロセスの一番最初に存在するスレッド) を返します。
メインスレッド (プロセスの一番最初に存在するスレッド) を返します。 -
int rb
_ thread _ alone(void) (36601.0) -
評価器にスレッドが一つしか存在しないとき真。
評価器にスレッドが一つしか存在しないとき真。 -
int rb
_ thread _ fd _ writable(int fd) (36601.0) -
-
static VALUE rb
_ thread _ critical _ get(void) (36601.0) -
-
static VALUE rb
_ thread _ critical _ set(VALUE obj , VALUE val) (36601.0) -
-
static VALUE rb
_ thread _ exit(void) (36601.0) -
-
static VALUE rb
_ thread _ s _ abort _ exc(void) (36601.0) -
-
static VALUE rb
_ thread _ s _ abort _ exc _ set(VALUE self , VALUE val) (36601.0) -
-
static VALUE rb
_ thread _ s _ kill(VALUE obj , VALUE th) (36601.0) -
-
static VALUE rb
_ thread _ s _ new(int argc , VALUE *argv , VALUE klass) (36601.0) -
-
static VALUE rb
_ thread _ start(VALUE klass , VALUE args) (36601.0) -
-
static void rb
_ thread _ cleanup(void) (36601.0) -
-
static void rb
_ thread _ deadlock(void) (36601.0) -
-
void rb
_ gc _ mark _ threads(void) (36601.0) -
存在するスレッド全てをマークします。
存在するスレッド全てをマークします。 -
void rb
_ thread _ atfork(void) (36601.0) -
-
void rb
_ thread _ fd _ close(int fd) (36601.0) -
-
void rb
_ thread _ interrupt(void) (36601.0) -
-
void rb
_ thread _ signal _ raise(char *sig) (36601.0) -
-
void rb
_ thread _ sleep(int sec) (36601.0) -
-
void rb
_ thread _ sleep _ forever(void) (36601.0) -
-
void rb
_ thread _ start _ timer(void) (36601.0) -
setitimer(2) が存在する場合のみ定義されます。
setitimer(2) が存在する場合のみ定義されます。
Ruby のスレッドスケジューリングに使用している
インターバルタイマーを開始します。 -
void rb
_ thread _ stop _ timer(void) (36601.0) -
setitimer(2) が存在する場合のみ定義されます。
setitimer(2) が存在する場合のみ定義されます。
Ruby のスレッドスケジューリングに使用しているインターバルタイマーを
停止します。このタイマーが止まると Ruby のスレッド機構は基本的に停止
しますので注意してください。 -
void rb
_ thread _ trap _ eval(VALUE cmd , int sig) (36601.0) -
-
void rb
_ thread _ wait _ fd(int fd) (36601.0) -
ファイルディスクリプタ fd を読み込めるようになるまで カレントスレッドを停止します。
ファイルディスクリプタ fd を読み込めるようになるまで
カレントスレッドを停止します。 -
void rb
_ thread _ wait _ for(struct timeval time) (36601.0) -
time の長さの時間が経過するまでカレントスレッドを停止します。
time の長さの時間が経過するまでカレントスレッドを停止します。 -
Thread
:: Backtrace :: Location # base _ label -> String (36367.0) -
self が表すフレームの基本ラベルを返します。通常、 Thread::Backtrace::Location#label から修飾を取り除いたもので構成 されます。
self が表すフレームの基本ラベルを返します。通常、
Thread::Backtrace::Location#label から修飾を取り除いたもので構成
されます。
//emlist[例][ruby]{
# foo.rb
class Foo
attr_accessor :locations
def initialize(skip)
@locations = caller_locations(skip)
end
end
Foo.new(0..2).locations.map do |call|
puts call.base_label
end
# => init... -
Net
:: IMAP :: ThreadMember (36097.0) -
Net::IMAP#thread、 Net::IMAP#uid_thread から 得られるスレッドの木構造のノードを表すクラスです。
Net::IMAP#thread、 Net::IMAP#uid_thread から
得られるスレッドの木構造のノードを表すクラスです。 -
Thread
# [](name) -> object | nil (27733.0) -
name に対応したスレッドに固有のデータを取り出します。 name に対応するスレッド固有データがなければ nil を返し ます。
name に対応したスレッドに固有のデータを取り出します。
name に対応するスレッド固有データがなければ nil を返し
ます。
@param name スレッド固有データのキーを文字列か Symbol で指定します。
//emlist[例][ruby]{
[
Thread.new { Thread.current["name"] = "A" },
Thread.new { Thread.current[:name] = "B" },
Thread.new { Thread.current["name"] = "C" }
].each do |th|
th.join... -
Etc
:: CS _ GNU _ LIBPTHREAD _ VERSION -> Integer (27601.0) -
Etc.#confstr の引数に指定します。
Etc.#confstr の引数に指定します。
詳細は confstr(3) を参照してください。 -
Thread
. handle _ interrupt(hash) { . . . } -> object (27571.0) -
スレッドの割り込みのタイミングを引数で指定した内容に変更してブロックを 実行します。
スレッドの割り込みのタイミングを引数で指定した内容に変更してブロックを
実行します。
「割り込み」とは、非同期イベントや Thread#raise や
Thread#kill、Signal.#trap(未サポート)、メインスレッドの終了
(メインスレッドが終了すると、他のスレッドも終了されます)を意味します。
@param hash 例外クラスがキー、割り込みのタイミングを指定する
Symbol が値の Hash を指定します。
値の内容は以下のいずれかです。
: :immediate
すぐに割り込みます。
: :on_block... -
Thread
. pending _ interrupt?(error = nil) -> bool (27535.0) -
非同期割り込みのキューが空かどうかを返します。
非同期割り込みのキューが空かどうかを返します。
Thread.handle_interrupt は非同期割り込みの発生を延期させるのに使
用しますが、本メソッドは任意の非同期割り込みが存在するかどうかを確認す
るのに使用します。
本メソッドが true を返した場合、Thread.handle_interrupt で例外の
発生を延期するブロックを終了すると延期させられていた例外を発生させるこ
とができます。
@param error 対象の例外クラスを指定します。省略した場合は全ての例外を対
象に確認を行います。
例: 延期させられていた例外をただちに発生... -
Thread
# report _ on _ exception -> bool (27517.0) -
真の場合、そのスレッドが例外によって終了した時に、その内容を $stderr に報告します。
真の場合、そのスレッドが例外によって終了した時に、その内容を $stderr に報告します。
デフォルトはスレッド作成時の Thread.report_on_exception です。
@param newstate スレッド実行中に例外発生した場合、その内容を報告するかどうかを true か false で指定します。
//emlist[例][ruby]{
a = Thread.new{ Thread.stop; raise }
a.report_on_exception = true
a.report_on_exception # => true
a.run
# => #<Th... -
Thread
# alive? -> bool (27427.0) -
スレッドが「生きている」時、true を返します。
スレッドが「生きている」時、true を返します。
例:
thr = Thread.new { }
thr.join # => #<Thread:0x401b3fb0 dead>
Thread.current.alive? # => true
thr.alive? # => false
Thread#status が真を返すなら、このメソッドも真です。
@see Thread#status, Thread#stop? -
Thread
# fetch(name , default = nil) {|name| . . . } -> object (27427.0) -
name に関連づけられたスレッドに固有のデータを返します。 name に対応するスレッド固有データがない時には、引数 default が 与えられていればその値を、ブロックが与えられていれば そのブロックを評価した値を返します。
name に関連づけられたスレッドに固有のデータを返します。
name に対応するスレッド固有データがない時には、引数 default が
与えられていればその値を、ブロックが与えられていれば
そのブロックを評価した値を返します。
@param name スレッド固有データのキーを文字列か Symbol で指定します。
@param default name に対応するスレッド固有データがない時の返り値を指定します。
@raise KeyError 引数defaultもブロックも与えられてない時、
name に対応するスレッド固有データがないと発生します。
... -
Thread
# stop? -> bool (27427.0) -
スレッドが終了(dead)あるいは停止(stop)している時、true を返します。
スレッドが終了(dead)あるいは停止(stop)している時、true を返します。
//emlist[例][ruby]{
a = Thread.new { Thread.stop }
b = Thread.current
a.stop? # => true
b.stop? # => false
//}
@see Thread#alive?, Thread#status -
Thread
# value -> object (27421.0) -
スレッド self が終了するまで待ち(Thread#join と同じ)、 そのスレッドのブロックが返した値を返します。スレッド実行中に例外が 発生した場合には、その例外を再発生させます。
スレッド self が終了するまで待ち(Thread#join と同じ)、
そのスレッドのブロックが返した値を返します。スレッド実行中に例外が
発生した場合には、その例外を再発生させます。
スレッドが Thread#kill によって終了した場合は、返り値は不定です。
以下は、生成したすべてのスレッドの終了を待ち結果を出力する例です。
threads = []
threads.push(Thread.new { n = rand(5); sleep n; n })
threads.push(Thread.new { n = rand(5); sleep n; n })... -
Thread
. report _ on _ exception -> bool (27409.0) -
真の時は、いずれかのスレッドが例外によって終了した時に、その内容を $stderr に報告します。
真の時は、いずれかのスレッドが例外によって終了した時に、その内容を $stderr に報告します。
デフォルトは true です。
Thread.new { 1.times { raise } }
は $stderr に以下のように出力します:
#<Thread:...> terminated with exception (report_on_exception is true):
Traceback (most recent call last):
2: from -e:1:in `block in <main>'
1: fro... -
Thread
. exclusive { . . . } -> object (27391.0) -
VM グローバルの Mutex をロックし、ブロックを実行します。
VM グローバルの Mutex をロックし、ブロックを実行します。
このクラスメソッドの挙動は 1.8 以前とは違います。
Thread.exclusive は VM グローバルの Thread::MUTEX_FOR_THREAD_EXCLUSIVE の
synchronize を呼び出しているだけで、Thread.exclusive していないスレッドは動きます。
Thread::Mutex や Monitor などの他の排他制御の方法を検討してください。 -
Thread
:: ConditionVariable # broadcast -> self (27385.0) -
状態変数を待っているスレッドをすべて再開します。再開された スレッドは Thread::ConditionVariable#wait で指定した mutex のロックを試みます。
状態変数を待っているスレッドをすべて再開します。再開された
スレッドは Thread::ConditionVariable#wait
で指定した mutex のロックを試みます。
@return 常に self を返します。
//emlist[例][ruby]{
mutex = Mutex.new
cv = ConditionVariable.new
flg = true
3.times {
Thread.start {
mutex.synchronize {
puts "a1"
while (flg)
cv.wait(mutex)
... -
Thread
# raise(error _ type , message , traceback) -> () (27337.0) -
自身が表すスレッドで強制的に例外を発生させます。
自身が表すスレッドで強制的に例外を発生させます。
@param error_type Kernel.#raise を参照してください。
@param message Kernel.#raise を参照してください。
@param traceback Kernel.#raise を参照してください。
Thread.new {
sleep 1
Thread.main.raise "foobar"
}
begin
sleep
rescue
p $!, $@
end
=> #<RuntimeError: foobar>
[... -
Thread
:: Backtrace :: Location # label -> String (27337.0) -
self が表すフレームのラベルを返します。通常、メソッド名、クラス名、モ ジュール名などで構成されます。
self が表すフレームのラベルを返します。通常、メソッド名、クラス名、モ
ジュール名などで構成されます。
例: Thread::Backtrace::Location の例1を用いた例
//emlist[][ruby]{
loc = c(0..1).first
loc.label # => "a"
//}
@see Thread::Backtrace::Location#base_label -
ObjectSpace
. # count _ tdata _ objects(result _ hash = nil) -> Hash (27319.0) -
T_DATA の種類ごとにオブジェクトの数を格納したハッシュを返します。
T_DATA の種類ごとにオブジェクトの数を格納したハッシュを返します。
@param result_hash 戻り値のためのハッシュを指定します。省略した場合は新
しくハッシュを作成します。result_hash の内容は上書き
されます。プローブ効果を避けるために使用します。
@raise TypeError result_hash にハッシュ以外を指定した時に発生します。
本メソッドは普通の Ruby プログラマ向けのメソッドではありません。パフォー
マンスに興味のある C Ruby の開発者向けのもので... -
Thread
# key?(name) -> bool (27319.0) -
name に対応したスレッドに固有のデータが定義されていれば true を返します。
name に対応したスレッドに固有のデータが定義されていれば
true を返します。
@param name 文字列か Symbol で指定します。
//emlist[例][ruby]{
me = Thread.current
me[:oliver] = "a"
me.key?(:oliver) # => true
me.key?(:stanley) # => false
//} -
Thread
# keys -> [Symbol] (27319.0) -
スレッド固有データに関連づけられたキーの配列を返します。キーは Symbol で返されます。
スレッド固有データに関連づけられたキーの配列を返します。キーは
Symbol で返されます。
th = Thread.current
th[:foo] = 'FOO'
th['bar'] = 'BAR'
p th.keys
#=> [:bar, :foo]