別のキーワード
種類
ライブラリ
- English (24)
- ビルトイン (679)
-
net
/ http (24) - optparse (24)
- pathname (12)
- set (9)
- shell (6)
-
shell
/ command-processor (6) -
shell
/ filter (6) - shellwords (48)
- socket (132)
- thread (20)
- thwait (24)
- tsort (23)
- uri (12)
-
webrick
/ httputils (12) - win32ole (36)
- zlib (36)
クラス
- Array (87)
- BasicObject (24)
- Dir (24)
- File (12)
- IO (12)
- Mutex (4)
- OptionParser (24)
- Pathname (12)
- Set (12)
- Shell (6)
-
Shell
:: CommandProcessor (6) -
Shell
:: Filter (6) - Socket (72)
- String (31)
- Thread (218)
-
Thread
:: Mutex (20) -
Thread
:: Queue (48) -
Thread
:: SizedQueue (36) - ThreadsWait (24)
-
WIN32OLE
_ VARIABLE (12) -
Zlib
:: Deflate (24) -
Zlib
:: Inflate (12)
モジュール
- Enumerable (84)
- Kernel (36)
-
Net
:: HTTPHeader (24) - Shellwords (24)
-
Socket
:: Constants (48) - TSort (23)
- URI (12)
-
WEBrick
:: HTTPUtils (12)
キーワード
-
$ , (12) -
$ OFS (12) -
$ OUTPUT _ FIELD _ SEPARATOR (12) - * (24)
-
1
. 6 . 8から1 . 8 . 0への変更点(まとめ) (12) - ConditionVariable (12)
- DOSISH 対応 (12)
- Enumerator (12)
- Fiber (12)
-
IPV6
_ JOIN _ GROUP (24) -
IP
_ MAX _ MEMBERSHIPS (24) -
MCAST
_ JOIN _ GROUP (24) -
MCAST
_ JOIN _ SOURCE _ GROUP (24) -
NEWS for Ruby 2
. 0 . 0 (12) -
NEWS for Ruby 2
. 7 . 0 (6) -
NEWS for Ruby 3
. 0 . 0 (5) - Queue (12)
- Shellwords (12)
- SizedQueue (12)
- TCPServer (12)
- Thread (12)
- ThreadError (12)
- ThreadGroup (12)
- WIN32OLE (12)
-
WIN32OLE
_ METHOD (12) - [] (20)
-
_ _ send _ _ (24) -
abort
_ on _ exception (24) -
abort
_ on _ exception= (24) -
add
_ trace _ func (12) - alive? (12)
- binwrite (12)
-
canonical
_ each (12) - cgi (12)
- chunk (12)
-
chunk
_ while (12) - deflate (12)
- deq (24)
- disjoint? (12)
- drb (12)
-
drb
/ extservm (12) -
drb
/ gw (12) -
each
_ capitalized (12) -
each
_ strongly _ connected _ component _ from (23) - empty? (6)
- escape (12)
- fetch (8)
- glob (16)
-
join
_ nowait (6) - load (12)
-
next
_ wait (6) -
num
_ waiting (12) -
ole
_ type _ detail (12) -
on
_ tail (12) - owned? (12)
- pack (21)
- pack テンプレート文字列 (12)
- pop (24)
- profile (6)
-
rb
_ thread _ join (12) -
rb
_ thread _ join _ m (12) -
report
_ on _ exception (9) -
report
_ on _ exception= (9) -
rinda
/ rinda (12) -
ruby 1
. 6 feature (12) -
ruby 1
. 8 . 3 feature (12) -
ruby 1
. 8 . 4 feature (12) - run (12)
-
set
_ dictionary (24) -
set
_ trace _ func (12) - shelljoin (24)
- shift (24)
-
slice
_ after (24) -
slice
_ before (24) -
slice
_ when (12) - split (19)
- stop (12)
- sum (18)
-
thread
_ variable _ get (12) -
thread
_ variable _ set (12) - tsort (12)
- unix (24)
- unlock (12)
- unpack (12)
- value (12)
- wakeup (12)
- スレッド (12)
- セキュリティモデル (12)
検索結果
-
スレッド (30.0)
-
スレッド スレッドとはメモリ空間を共有して同時に実行される制御の流れです。 Ruby ではスレッドはThread クラスのインスタンスとして表されます。
...するスレッドを Thread#join で待っている他の
スレッドがある場合、その待っているスレッドに対して、同じ例外が再度
発生します。
begin
t = Thread.new do
Thread.pass # メインスレッドが確実にjoinするように
raise "un......handled exception"
end
t.join
rescue
p $! # => "unhandled exception"
end
また、以下の 3 つの方法により、いずれかのスレッドが例外によって終
了した時に、インタプリタ全体を中断させるように指定することができま
す。
*......この状態です。
Thread#join でスレッドの終了を待っているスレッドもスレッドの
終了によりこの状態になります。
この状態のスレッドは「生きて」います。
: sleep (停止状態)
Thread.stop や Thread#join により停止されたスレ... -
drb
/ gw (24.0) -
drb 通信を中継するゲートウェイ(DRb::GW)と、 中継に必要なオブジェクト識別子変換クラス(DRb::GWIdConv)、 および DRb::DRbObject への拡張が含まれています。
..._b_c', front)
s1.thread.join
s2.thread.join
gw_a.rb
require 'drb/unix'
require_relative 'foo'
obj = Foo.new('a')
DRb.start_service("drbunix:/tmp/gw_a", obj)
robj = DRbObject.new_with_uri('drbunix:/tmp/gw_b_a')
robj[:a] = obj
DRb.thread.join
gw_c.rb
require 'drb/unix......DRb.start_service("drbunix:/tmp/gw_c", nil)
robj = DRbObject.new_with_uri("drbunix:/tmp/gw_b_c")
puts "c->b"
a = robj[:a]
sleep 2
a.ping(foo)
DRb.thread.join
これを、gw_b, gw_a, gw_c の順に起動すると、gw_b を経由して
gw_a と gw_c が通信します。... -
ruby 1
. 6 feature (24.0) -
ruby 1.6 feature ruby version 1.6 は安定版です。この版での変更はバグ修正がメイン になります。
...$SAFE = 4
a.life -= 1
end.join
p a.life
=> ruby 1.6.4 (2001-06-04) [i586-linux]
6
=> ruby 1.6.4 (2001-08-06) [i586-linux]
-:6:in `life=': Insecure: can't modify Struct (SecurityError)
from -:3:in `join'
from -:3
: ((<String>))#rind......ナーバージョンが1あがりました
p Marshal.dump(Object.new).unpack("CC").join(".")
=> ruby 1.6.4 (2001-06-04) [i586-linux]
"4.5"
p Marshal.dump(Object.new).unpack("CC").join(".")
=> ruby 1.6.4 (2001-06-11) [i586-linux]
"4.6"
: $SAFE / ((<ク... -
Array
# *(sep) -> String (22.0) -
指定された sep を間にはさんで連結した文字列を生成して返します。Array#join(sep) と同じ動作をします。
...指定された sep を間にはさんで連結した文字列を生成して返します。Array#join(sep) と同じ動作をします。
@param sep 文字列を指定します。
文字列以外のオブジェクトを指定した場合は to_str メソッドによ
る暗......黙の型変換を試みます。
//emlist[例][ruby]{
p [1,2,3] * ","
# => "1,2,3"
//}
@see Array#join... -
Thread
# value -> object (22.0) -
スレッド self が終了するまで待ち(Thread#join と同じ)、 そのスレッドのブロックが返した値を返します。スレッド実行中に例外が 発生した場合には、その例外を再発生させます。
...スレッド self が終了するまで待ち(Thread#join と同じ)、
そのスレッドのブロックが返した値を返します。スレッド実行中に例外が
発生した場合には、その例外を再発生させます。
スレッドが Thread#kill によって終了した場合......n = rand(5); sleep n; n })
threads.push(Thread.new { n = rand(5); sleep n; n })
threads.each {|t| p t.value}
最後の行で、待ち合わせを行っていることがわかりにくいと思うなら以下
のように書くこともできます。
threads.each {|t| p t.join.value}... -
1
. 6 . 8から1 . 8 . 0への変更点(まとめ) (18.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への変更点(まとめ)/サポートプラットフォームの追加>))
...) [compat]
ローカル側アドレスを省略可能な第3,4引数で指定できるようになりました。
=== Thread
: ((<Thread#join|Thread/join>)) [compat]
スレッドを待ち合わせる時間を limit で指定できるようになりました。
: ((<Thread/Thread.list>)) [c......ナリモードになりました(((<ruby-dev:19583>)))
: ((<File/File.dirname>)) [CHANGE]
: ((<File/File.expand_path>)) [CHANGE]
: ((<File/File.join>)) [CHANGE]
DOSISHなプラットフォームでのドライブレター対応が強化されました。
((<DOSISH 対応>))を参照。
: ((<... -
IO
. binwrite(path , string , offset=nil) -> Integer (18.0) -
path で指定されるファイルを開き、string を書き込み、 閉じます。
...p {|c| '%02x' % c }.join(' ')
# => 89 50 4e 47 0d 0a 1a 0a 00 00 00 0d 49 48 44 52
# binwriteを使用した場合: どの環境でも正しく保存できる。
IO.binwrite('white.binmode.png', png)
puts IO.binread('white.binmode.png', 16).unpack('C*').map {|c| '%02x' % c }.join(' ')
# => 89 50 4e......ト列が変換されてしまう。
IO.write('white.txtmode.png', png)
puts IO.binread('white.txtmode.png', 16).unpack('C*').map {|c| '%02x' % c }.join(' ')
# => 89 50 4e 47 0d 0a 1a 0a 00 00 00 0d 49 48 44 52 (Linux/Macの場合
# => 89 50 4e 47 0d 0d 0a 1a 0d 0a 00 00 00 0d 49 48 (Windowsの場... -
NEWS for Ruby 3
. 0 . 0 (18.0) -
NEWS for Ruby 3.0.0 このドキュメントは前回リリース以降のバグ修正を除くユーザーに影響のある機能の変更のリストです。
...d and how to implement the scheduler hooks. 16786
* Fiber.blocking? tells whether the current execution context is blocking. 16786
* Thread#join invokes the scheduler hooks `block`/`unblock` in a non-blocking execution context. 16786
* Thread
* Thread.ignore_deadlock accessor has been......ompatible.
* Set
* Update to set 1.0.0
* SortedSet has been removed for dependency and performance reasons.
* Set#join is added as a shorthand for `.to_a.join`.
* Set#<=> is added.
* Socket
* Add :connect_timeout to TCPSocket.new 17187
* Net::HTTP
* Net::HTTP#verify_hos... -
Kernel
$ $ , -> String | nil (16.0) -
デフォルトの出力フィールド区切り文字列です。 Array#join で引数を省略した場合と、 Kernel.#print の各引数の間で出力されます。
...デフォルトの出力フィールド区切り文字列です。
Array#join で引数を省略した場合と、
Kernel.#print の各引数の間で出力されます。
デフォルト値は nil で、空文字列と同じ結果になります。
Ruby 2.7からは nil 以外に変更するこ... -
Socket
:: Constants :: IP _ MAX _ MEMBERSHIPS -> Integer (16.0) -
Maximum number multicast groups a socket can join。 BasicSocket#getsockopt, BasicSocket#setsockopt の第2引数(optname)に使用します。
...Maximum number multicast groups a socket can join。
BasicSocket#getsockopt, BasicSocket#setsockopt
の第2引数(optname)に使用します。
@see Socket::Constants::IPPROTO_IP,
ip(4freebsd)...