ライブラリ
- ビルトイン (80)
-
cgi
/ html (2) - csv (1)
- digest (1)
-
digest
/ sha2 (1) - etc (6)
- fcntl (1)
- fiddle (2)
- gdbm (1)
-
io
/ nonblock (1) - monitor (5)
-
mutex
_ m (9) -
net
/ ftp (13) -
net
/ http (2) - openssl (8)
- optparse (2)
- ostruct (1)
- pathname (1)
- psych (4)
-
rubygems
/ commands / lock _ command (1) - socket (17)
- stringio (2)
-
syslog
/ logger (7) -
webrick
/ utils (1)
クラス
-
ARGF
. class (1) - Array (5)
- BasicSocket (3)
- CSV (1)
- Class (1)
- Data (2)
-
Digest
:: Base (1) -
Digest
:: SHA2 (1) -
Enumerator
:: Lazy (2) -
Fiddle
:: Closure :: BlockCaller (2) - File (2)
-
File
:: Stat (2) - GDBM (1)
-
Gem
:: Commands :: LockCommand (1) - Hash (1)
- IO (3)
- Monitor (3)
-
Net
:: FTP (13) -
Net
:: HTTP (2) - Object (1)
-
OpenSSL
:: Cipher (1) -
OpenSSL
:: Digest (1) -
OpenSSL
:: SSL :: SSLSocket (2) - OpenStruct (1)
- OptionParser (2)
- Pathname (1)
-
Psych
:: Nodes :: Mapping (2) -
Psych
:: Nodes :: Sequence (2) - Socket (7)
- String (6)
- StringIO (2)
- Struct (2)
-
Syslog
:: Logger (7) - TCPServer (1)
- Thread (1)
-
Thread
:: Mutex (6) -
Thread
:: Queue (3) -
Thread
:: SizedQueue (5) - UDPSocket (1)
- UNIXServer (1)
モジュール
-
CGI
:: HtmlExtension (2) - Enumerable (3)
- Etc (6)
- Fcntl (1)
-
File
:: Constants (5) - FileTest (1)
- Kernel (2)
- MonitorMixin (2)
-
Mutex
_ m (8) -
OpenSSL
:: Buffering (3) -
OpenSSL
:: SSL (1) - Process (25)
-
Socket
:: Constants (4) -
WEBrick
:: Utils (1)
オブジェクト
- ENV (1)
キーワード
- BLOCK (2)
-
BLOCK
_ SIZE (1) -
CLOCK
_ BOOTTIME (1) -
CLOCK
_ BOOTTIME _ ALARM (1) -
CLOCK
_ MONOTONIC (1) -
CLOCK
_ MONOTONIC _ COARSE (1) -
CLOCK
_ MONOTONIC _ FAST (1) -
CLOCK
_ MONOTONIC _ PRECISE (1) -
CLOCK
_ MONOTONIC _ RAW (1) -
CLOCK
_ MONOTONIC _ RAW _ APPROX (1) -
CLOCK
_ PROCESS _ CPUTIME _ ID (1) -
CLOCK
_ PROF (1) -
CLOCK
_ REALTIME (1) -
CLOCK
_ REALTIME _ ALARM (1) -
CLOCK
_ REALTIME _ COARSE (1) -
CLOCK
_ REALTIME _ FAST (1) -
CLOCK
_ REALTIME _ PRECISE (1) -
CLOCK
_ SECOND (1) -
CLOCK
_ THREAD _ CPUTIME _ ID (1) -
CLOCK
_ UPTIME (1) -
CLOCK
_ UPTIME _ FAST (1) -
CLOCK
_ UPTIME _ PRECISE (1) -
CLOCK
_ UPTIME _ RAW (1) -
CLOCK
_ UPTIME _ RAW _ APPROX (1) -
CLOCK
_ VIRTUAL (1) -
DEFAULT
_ BLOCKSIZE (1) -
IP
_ BLOCK _ SOURCE (2) -
IP
_ UNBLOCK _ SOURCE (2) -
LOCK
_ EX (1) -
LOCK
_ NB (1) -
LOCK
_ SH (1) -
LOCK
_ UN (1) -
MCAST
_ BLOCK _ SOURCE (2) -
MCAST
_ UNBLOCK _ SOURCE (2) -
Mutex
_ m (1) -
NEWS for Ruby 2
. 0 . 0 (1) - NOLOCK (1)
- NONBLOCK (1)
-
OP
_ TLS _ BLOCK _ PADDING _ BUG (1) -
O
_ NONBLOCK (1) -
RLIMIT
_ MEMLOCK (1) -
SC
_ CLOCK _ SELECTION (1) -
SC
_ MEMLOCK (1) -
SC
_ MEMLOCK _ RANGE (1) -
SC
_ MONOTONIC _ CLOCK (1) -
SC
_ READER _ WRITER _ LOCKS (1) -
SC
_ SPIN _ LOCKS (1) - Thread (1)
-
accept
_ nonblock (4) - add (1)
-
block
_ given? (1) -
block
_ length (3) -
block
_ size (1) - blockdev? (4)
- blockquote (2)
- blocks (1)
- call (1)
- chars (1)
-
clock
_ gettime (1) - codepoints (1)
-
collect
_ concat (1) - combination (1)
-
connect
_ nonblock (2) - debug (1)
- define (1)
- deq (2)
-
each
_ char (1) -
each
_ codepoint (1) -
each
_ entry (1) -
each
_ grapheme _ cluster (1) - enq (1)
- enter (1)
-
enum
_ for (1) - error (1)
- fatal (1)
- filter! (1)
-
flat
_ map (1) - flock (2)
- get (2)
- getbinaryfile (2)
-
grapheme
_ clusters (1) -
ignore
_ deadlock (1) - info (1)
- initialize (1)
- iterator? (1)
- locked? (2)
-
mon
_ enter (2) -
mon
_ locked? (2) - monitor (1)
-
mu
_ lock (1) -
mu
_ locked? (1) -
mu
_ try _ lock (1) -
mu
_ unlock (1) - new (5)
- nonblock (1)
-
on
_ head (1) -
on
_ tail (1) - owned? (1)
- permutation (1)
- pop (2)
- push (1)
- put (2)
- putbinaryfile (2)
-
read
_ nonblock (4) -
recv
_ nonblock (1) -
recvfrom
_ nonblock (2) -
recvmsg
_ nonblock (1) - retrbinary (2)
-
ruby 1
. 6 feature (1) -
ruby 1
. 8 . 3 feature (1) -
ruby 1
. 8 . 5 feature (1) -
ruby 1
. 9 feature (1) - select! (1)
-
sendmsg
_ nonblock (1) -
set
_ non _ blocking (1) - shift (2)
- sleep (1)
-
spec
_ path (1) - storbinary (2)
-
to
_ enum (1) -
to
_ h (6) -
try
_ lock (2) - unknown (1)
- unlock (3)
- warn (1)
-
write
_ nonblock (3) - スレッド (1)
検索結果
先頭5件
-
Net
:: HTTP # lock(path , body , initheader = nil) -> Net :: HTTPResponse (64270.0) -
サーバの path に LOCK リクエストを ヘッダを initheader, ボディを body として送ります。
サーバの path に LOCK リクエストを
ヘッダを initheader, ボディを body として送ります。
レスポンスを Net::HTTPResponse のオブジェクト
で返します。
@param path リクエストを送るパスを文字列で与えます。
@param body リクエストのボディを文字列で与えます。
@param initheader リクエストのヘッダを「文字列=>文字列」の
ハッシュで与えます。
@see Net::HTTP::Lock -
Mutex
_ m # lock -> () (63607.0) -
self をロックします。一度にひとつのスレッドしかロックできません。 既にロックされている mutex に対してロックを行おうとしたスレッドは ロックが解放されるまで、実行が停止されます。
self をロックします。一度にひとつのスレッドしかロックできません。
既にロックされている mutex に対してロックを行おうとしたスレッドは
ロックが解放されるまで、実行が停止されます。 -
Thread
:: Mutex # lock -> self (63604.0) -
mutex オブジェクトをロックします。一度に一つのス レッドだけが mutex をロックできます。既にロックされている mutex に対してロックを行おうとしたスレッドは mutex のロックが解放さ れるまで、実行が停止されます。
mutex オブジェクトをロックします。一度に一つのス
レッドだけが mutex をロックできます。既にロックされている mutex
に対してロックを行おうとしたスレッドは mutex のロックが解放さ
れるまで、実行が停止されます。
@raise ThreadError self 既にカレントスレッドにロックされている場合に発
生します。
また、Signal.#trap に指定したハンドラ内で実行
した場合に発生します。
@see Thread::Mutex#unlock
... -
Process
. # clock _ gettime(clock _ id , unit=:float _ second) -> Float | Integer (37273.0) -
POSIX の clock_gettime() 関数の時間を返します。
...nux 2.5.63, FreeBSD 3.0, NetBSD 2.0, OpenBSD 2.1, macOS 10.12
: Process::CLOCK_MONOTONIC
SUSv3 to 4, Linux 2.5.63, FreeBSD 3.0, NetBSD 2.0, OpenBSD 3.4, macOS 10.12
: Process::CLOCK_PROCESS_CPUTIME_ID
SUSv3 to 4, Linux 2.5.63, OpenBSD 5.4, macOS 10.12
: Process::CLOCK_THREAD_CPUTIME_ID
SUSv3 to 4... -
CGI
:: HtmlExtension # blockquote(cite = nil) -> String (37201.0) -
blockquote 要素を生成します。
blockquote 要素を生成します。
ブロックを与えると、ブロックを評価した結果が内容になります。
@param cite 引用元を指定します。属性をハッシュで指定することもできます。
例:
blockquote("http://www.example.com/quotes/foo.html") { "Foo!" }
#=> "<BLOCKQUOTE CITE=\"http://www.example.com/quotes/foo.html\">Foo!</BLOCKQUOTE> -
CGI
:: HtmlExtension # blockquote(cite = nil) { . . . } -> String (37201.0) -
blockquote 要素を生成します。
blockquote 要素を生成します。
ブロックを与えると、ブロックを評価した結果が内容になります。
@param cite 引用元を指定します。属性をハッシュで指定することもできます。
例:
blockquote("http://www.example.com/quotes/foo.html") { "Foo!" }
#=> "<BLOCKQUOTE CITE=\"http://www.example.com/quotes/foo.html\">Foo!</BLOCKQUOTE> -
IO
# write _ nonblock(string , exception: true) -> Integer | :wait _ writable (37201.0) -
IO をノンブロッキングモードに設定し、string を write(2) システムコールで書き出します。
IO をノンブロッキングモードに設定し、string を write(2) システムコールで書き出します。
write(2) が成功した場合、書き込んだ長さを返します。
EAGAIN, EINTR などは例外 Errno::EXXX として呼出元に報告されます。
書き込んだバイト数(つまり返り値)は String#bytesize の
値より小さい可能性があります。
発生した例外 がErrno::EAGAIN、 Errno::EWOULDBLOCK である場合は、
その例外オブジェクトに IO::WaitWritable が Object#extend
されます。よって IO::Wai... -
OpenSSL
:: Buffering # write _ nonblock(s) -> Integer (37201.0) -
文字列 s をノンブロッキングモードで書き込みます。
文字列 s をノンブロッキングモードで書き込みます。
成功した場合、書き込んだバイト数を返します。
1 バイトも書くことができず、ソケットの状態が変化するのを
待つ必要がある場合は例外を発生させます。
例外が発生した場合、内部のソケットが利用可能になってから
再びこのメソッドを呼んでください。
ただし内部バッファに書き込んでいないデータが残っている場合は、
まずバッファの内容をすべて出力してします。この時点で
ブロックする可能性があります。
基本的には IO#write_nonblock と同様です。しかし以下のような
違いもあります。
このメソッドはソケットが読み込み不可能(IO:... -
Thread
:: Mutex # try _ lock -> bool (36940.0) -
mutex をロックしようとして、ロックが成功した場合、真を返します。 ロックできなかった場合にはブロックせず偽を返します。
mutex をロックしようとして、ロックが成功した場合、真を返します。
ロックできなかった場合にはブロックせず偽を返します。
//emlist[例][ruby]{
m = Mutex.new
m.try_lock # => true
m.try_lock # => false
//} -
Socket
# connect _ nonblock(server _ sockaddr) -> 0 (36919.0) -
ソケットをノンブロッキングモードに設定した後、 connect(2) を呼び出します。
ソケットをノンブロッキングモードに設定した後、
connect(2) を呼び出します。
引数、返り値は Socket#connect と同じです。
connect が EINPROGRESS エラーを報告した場合、その例外(Errno::EINPROGRESS)
には IO::WaitWritable が Object#extend されます。
これを connect_nonblock をリトライするために使うことができます。
# Pull down Google's web page
require 'socket'
include Socket::Constants
... -
Mutex
_ m # mu _ try _ lock -> bool (36907.0) -
self をロックしようとして、成功した場合、真を返し、ロックを得ます。
self をロックしようとして、成功した場合、真を返し、ロックを得ます。
ロックできなかった場合にはブロックせず偽を返します。 -
Mutex
_ m # try _ lock -> bool (36907.0) -
self をロックしようとして、成功した場合、真を返し、ロックを得ます。
self をロックしようとして、成功した場合、真を返し、ロックを得ます。
ロックできなかった場合にはブロックせず偽を返します。 -
Digest
:: Base # block _ length -> Integer (36901.0) -
ダイジェストのブロック長を取得します。 例えば、Digest::MD5であれば64、Digest::SHA512であれば128です。
ダイジェストのブロック長を取得します。
例えば、Digest::MD5であれば64、Digest::SHA512であれば128です。
本メソッドは、Digest::MD5などのダイジェストのサブクラスにより、
それぞれの実装に適したものにオーバーライドされます。
例: Digest::MD、Digest::SHA1、Digest::SHA512のブロック長を順番に調べる。
require 'digest'
["MD5", "SHA1", "SHA512"].map{|a| Digest(a).new().block_length } # => [64, 128, 128] -
Digest
:: SHA2 # block _ length -> Integer (36901.0) -
ダイジェストのブロック長を返します。
ダイジェストのブロック長を返します。 -
Net
:: FTP :: DEFAULT _ BLOCKSIZE -> Integer (36901.0) -
get, put をするときのデフォルトのブロックサイズです。
get, put をするときのデフォルトのブロックサイズです。 -
OpenSSL
:: Digest # block _ length -> Integer (36901.0) -
ハッシュ関数のブロックサイズを返します。
ハッシュ関数のブロックサイズを返します。 -
OpenSSL
:: SSL :: OP _ TLS _ BLOCK _ PADDING _ BUG -> Integer (36901.0) -
SSL 通信での各種バグ回避コードを有効にするフラグです。
SSL 通信での各種バグ回避コードを有効にするフラグです。
OpenSSL::SSL::SSLContext#options= で利用します。
通常は OpenSSL::SSL::OP_ALL でこれらすべてを有効にします。
特定のフラグのみ無効にしたい場合は例えば
ctx.options = OP_ALL & ~OP_DONT_INSERT_EMPTY_FRAGMENTS
などとします。 -
OpenSSL
:: SSL :: SSLSocket # accept _ nonblock -> self (36901.0) -
ノンブロッキング方式で TLS/SSL 通信をサーバモードとして開始し、 クライアントとのハンドシェイクを実行します。
ノンブロッキング方式で
TLS/SSL 通信をサーバモードとして開始し、
クライアントとのハンドシェイクを実行します。
IO が読み込み待ち、もしくは書き込み待ちになった場合は例外を
発生させ、ハンドシェイクを中断します。IO が読み込み/書き込み
可能状態になってからこのメソッドをもう一度呼ぶと
ハンドシェイクを再開します。
@raise OpenSSL::SSL::SSLError ハンドシェイクに失敗した(VERIFY_PEER で
証明書の検証に失敗した場合や、プロトコル合意に失敗したなど)
場合に発生します
(実際は OpenSSL::S... -
OpenSSL
:: SSL :: SSLSocket # connect _ nonblock -> self (36901.0) -
ノンブロッキング方式で TLS/SSL 通信をクライアントモードとして開始し、 サーバとのハンドシェイクを実行します。
ノンブロッキング方式で
TLS/SSL 通信をクライアントモードとして開始し、
サーバとのハンドシェイクを実行します。
IO が読み込み待ち、もしくは書き込み待ちになった場合は例外を
発生させ、ハンドシェイクを中断します。IO が読み込み/書き込み
可能状態になってからこのメソッドをもう一度呼ぶと
ハンドシェイクを再開します。
@raise OpenSSL::SSL::SSLError ハンドシェイクに失敗した(VERIFY_PEER で
証明書の検証に失敗した場合や、プロトコル合意に失敗したなど)
場合に発生します
@raise OpenSSL::SSL::S... -
Process
:: CLOCK _ BOOTTIME -> Integer (36901.0) -
Process.#clock_gettime で使われます。
Process.#clock_gettime で使われます。
システムによっては定義されていません。 -
Process
:: CLOCK _ BOOTTIME _ ALARM -> Integer (36901.0) -
Process.#clock_gettime で使われます。
Process.#clock_gettime で使われます。
システムによっては定義されていません。 -
Process
:: CLOCK _ MONOTONIC -> Integer | Symbol (36901.0) -
Process.#clock_gettime で使われます。
Process.#clock_gettime で使われます。
システムによっては :MACH_ABSOLUTE_TIME_BASED_CLOCK_MONOTONIC です。
システムによっては定義されていません。 -
Process
:: CLOCK _ MONOTONIC _ COARSE -> Integer (36901.0) -
Process.#clock_gettime で使われます。
Process.#clock_gettime で使われます。
システムによっては定義されていません。 -
Process
:: CLOCK _ MONOTONIC _ FAST -> Integer (36901.0) -
Process.#clock_gettime で使われます。
Process.#clock_gettime で使われます。
システムによっては定義されていません。 -
Process
:: CLOCK _ MONOTONIC _ PRECISE -> Integer (36901.0) -
Process.#clock_gettime で使われます。
Process.#clock_gettime で使われます。
システムによっては定義されていません。 -
Process
:: CLOCK _ MONOTONIC _ RAW -> Integer (36901.0) -
Process.#clock_gettime で使われます。
Process.#clock_gettime で使われます。
システムによっては定義されていません。 -
Process
:: CLOCK _ MONOTONIC _ RAW _ APPROX -> Integer (36901.0) -
Process.#clock_gettime で使われます。
Process.#clock_gettime で使われます。
システムによっては定義されていません。 -
Process
:: CLOCK _ PROCESS _ CPUTIME _ ID -> Integer | Symbol (36901.0) -
Process.#clock_gettime で使われます。
Process.#clock_gettime で使われます。
システムによっては :GETRUSAGE_BASED_CLOCK_PROCESS_CPUTIME_ID です。
システムによっては定義されていません。 -
Process
:: CLOCK _ REALTIME -> Integer | Symbol (36901.0) -
Process.#clock_gettime で使われます。
Process.#clock_gettime で使われます。
システムによっては :GETTIMEOFDAY_BASED_CLOCK_REALTIME です。
システムによっては定義されていません。 -
Process
:: CLOCK _ REALTIME _ ALARM -> Integer (36901.0) -
Process.#clock_gettime で使われます。
Process.#clock_gettime で使われます。
システムによっては定義されていません。 -
Process
:: CLOCK _ REALTIME _ COARSE -> Integer (36901.0) -
Process.#clock_gettime で使われます。
Process.#clock_gettime で使われます。
システムによっては定義されていません。 -
Process
:: CLOCK _ REALTIME _ FAST -> Integer (36901.0) -
Process.#clock_gettime で使われます。
Process.#clock_gettime で使われます。
システムによっては定義されていません。 -
Process
:: CLOCK _ REALTIME _ PRECISE -> Integer (36901.0) -
Process.#clock_gettime で使われます。
Process.#clock_gettime で使われます。
システムによっては定義されていません。 -
Process
:: CLOCK _ THREAD _ CPUTIME _ ID -> Integer (36901.0) -
Process.#clock_gettime で使われます。
Process.#clock_gettime で使われます。
システムによっては定義されていません。 -
Process
:: CLOCK _ UPTIME -> Integer (36901.0) -
Process.#clock_gettime で使われます。
Process.#clock_gettime で使われます。
システムによっては定義されていません。 -
Process
:: CLOCK _ UPTIME _ FAST -> Integer (36901.0) -
Process.#clock_gettime で使われます。
Process.#clock_gettime で使われます。
システムによっては定義されていません。 -
Process
:: CLOCK _ UPTIME _ PRECISE -> Integer (36901.0) -
Process.#clock_gettime で使われます。
Process.#clock_gettime で使われます。
システムによっては定義されていません。 -
Process
:: CLOCK _ UPTIME _ RAW -> Integer (36901.0) -
Process.#clock_gettime で使われます。
Process.#clock_gettime で使われます。
システムによっては定義されていません。 -
Process
:: CLOCK _ UPTIME _ RAW _ APPROX -> Integer (36901.0) -
Process.#clock_gettime で使われます。
Process.#clock_gettime で使われます。
システムによっては定義されていません。 -
Process
:: CLOCK _ VIRTUAL -> Integer (36901.0) -
Process.#clock_gettime で使われます。
Process.#clock_gettime で使われます。
システムによっては定義されていません。 -
Process
:: RLIMIT _ MEMLOCK -> Integer (36901.0) -
リソースの種類が mlock(2) でロックできるトータルのサイズであることを示す定数です。
リソースの種類が mlock(2) でロックできるトータルのサイズであることを示す定数です。
Process.#getrlimit、Process.#setrlimit で使われます。
システムによっては定義されていません。 -
Socket
# accept _ nonblock -> Array (36901.0) -
ソケットをノンブロッキングモードに設定した後、 accept(2) を呼び出します。
ソケットをノンブロッキングモードに設定した後、
accept(2) を呼び出します。
引数、返り値は Socket#accept と同じです。
accept(2) がエラーになった場合、
EAGAIN, EINTR を含め例外 Errno::EXXX が発生します。 -
Socket
:: Constants :: MCAST _ BLOCK _ SOURCE -> Integer (36901.0) -
Block multicast packets from this source
Block multicast packets from this source
BasicSocket#getsockopt, BasicSocket#setsockopt
の第2引数(optname)に使用します。
@see Socket::Constants::IPPROTO_IP, Socket::Constants::IPPROTO_IPV6,
3678 -
Socket
:: Constants :: MCAST _ UNBLOCK _ SOURCE -> Integer (36901.0) -
Unblock multicast packets from this source
Unblock multicast packets from this source
BasicSocket#getsockopt, BasicSocket#setsockopt
の第2引数(optname)に使用します。
@see Socket::Constants::IPPROTO_IP, Socket::Constants::IPPROTO_IPV6,
3678 -
Socket
:: MCAST _ BLOCK _ SOURCE -> Integer (36901.0) -
Block multicast packets from this source
Block multicast packets from this source
BasicSocket#getsockopt, BasicSocket#setsockopt
の第2引数(optname)に使用します。
@see Socket::Constants::IPPROTO_IP, Socket::Constants::IPPROTO_IPV6,
3678 -
Socket
:: MCAST _ UNBLOCK _ SOURCE -> Integer (36901.0) -
Unblock multicast packets from this source
Unblock multicast packets from this source
BasicSocket#getsockopt, BasicSocket#setsockopt
の第2引数(optname)に使用します。
@see Socket::Constants::IPPROTO_IP, Socket::Constants::IPPROTO_IPV6,
3678 -
TCPServer
# accept _ nonblock -> TCPSocket (36901.0) -
ソケットをノンブロッキングモードに設定した後、 accept(2) を呼び出します。
ソケットをノンブロッキングモードに設定した後、
accept(2) を呼び出します。
返り値は TCPServer#accept と同じです。
accept(2) がエラーになった場合、
EAGAIN, EINTR を含め例外 Errno::EXXX が発生します。
@raise Errno::EXXX accept(2) がエラーになった場合に発生します。 -
UNIXServer
# accept _ nonblock -> UnixSocket (36901.0) -
ソケットをノンブロッキングモードに設定した後、 accept(2) を呼び出します。
ソケットをノンブロッキングモードに設定した後、
accept(2) を呼び出します。
接続した
UNIXSocket のインスタンスを返します。
accept(2) がエラーになった場合、Socket#accept と同じ例外が
発生します。
Errno::EWOULDBLOCK, Errno::EAGAIN,
Errno::ECONNABORTED, Errno::EPROTO のいずれかの例外が
発生した場合は、その例外には IO::WaitReadable が extend
されます。それを利用してリトライ可能な例外を掴まえることができます。
require 'socket... -
WEBrick
:: Utils . # set _ non _ blocking(io) -> () (36901.0) -
指定された io をノンブロッキングに設定します。
指定された io をノンブロッキングに設定します。
@param io IO オブジェクトを指定します。 -
BasicSocket
# recvmsg _ nonblock(maxmesglen=nil , flags=0 , maxcontrollen=nil , opts={}) -> [String , Addrinfo , Integer , *Socket :: AncillaryData] (28201.0) -
recvmsg(2) を用いてノンブロッキング方式でメッセージを受け取ります。
recvmsg(2) を用いてノンブロッキング方式でメッセージを受け取ります。
ブロッキングの有無以外は BasicSocket#recvmsg と同じです。
詳しくはそちらを参照してください。
@param maxmesglen 受け取るメッセージの最大長
@param flags フラグ
@param maxcontrollen 受け取る補助データの最大長
@param opts ハッシュオプション -
Etc
:: SC _ READER _ WRITER _ LOCKS -> Integer (28201.0) -
Etc.#sysconf の引数に指定します。
Etc.#sysconf の引数に指定します。
詳細は sysconf(3) を参照してください。 -
Net
:: HTTP # unlock(path , body , initheader = nil) -> Net :: HTTPResponse (28201.0) -
サーバの path に UNLOCK リクエストを ヘッダを initheader, ボディを body として送ります。
サーバの path に UNLOCK リクエストを
ヘッダを initheader, ボディを body として送ります。
レスポンスを Net::HTTPResponse のオブジェクト
で返します。
@param path リクエストを送るパスを文字列で与えます。
@param body リクエストのボディを文字列で与えます。
@param initheader リクエストのヘッダを「文字列=>文字列」の
ハッシュで与えます。
@see Net::HTTP::Unlock -
StringIO
# write _ nonblock(obj) -> Integer (28201.0) -
自身に obj を書き込みます。StringIO#write と同じです。
自身に obj を書き込みます。StringIO#write と同じです。
@param obj 書き込みたいオブジェクトを指定します。
@raise IOError 自身が書き込み用にオープンされていなければ発生します。 -
File
:: Constants :: LOCK _ EX -> Integer (27904.0) -
排他ロック。同時にはただひとつのプロセスだけがロックを保持できます。 File#flock で使用します。
排他ロック。同時にはただひとつのプロセスだけがロックを保持できます。
File#flock で使用します。 -
File
:: Constants :: LOCK _ NB -> Integer (27904.0) -
ロックの際にブロックしない。他の指定と or することで指定します。 File#flock で使用します。
ロックの際にブロックしない。他の指定と or することで指定します。
File#flock で使用します。 -
File
:: Constants :: LOCK _ SH -> Integer (27904.0) -
共有ロック。複数のプロセスが同時にロックを共有できます。 File#flock で使用します。
共有ロック。複数のプロセスが同時にロックを共有できます。
File#flock で使用します。 -
File
:: Constants :: LOCK _ UN -> Integer (27904.0) -
アンロック。File#flock で使用します。
アンロック。File#flock で使用します。 -
BasicSocket
# recv _ nonblock(maxlen , flags = 0) -> String (27901.0) -
ソケットをノンブロッキングモードに設定した後、 recvfrom(2) でソケットからデータを受け取ります。
ソケットをノンブロッキングモードに設定した後、
recvfrom(2) でソケットからデータを受け取ります。
引数、返り値は BasicSocket#recv と同じです。
recvfrom(2) がエラーになった場合、
EAGAIN, EINTR を含め例外 Errno::EXXX が発生します。
@param maxlen 受け取る文字列の最大の長さを指定します。
@param flags recv(2) を参照してください。
@raise IOError
@raise Errno::EXXX recvfrom(2) がエラーになった場合などに発生します。 -
BasicSocket
# sendmsg _ nonblock(mesg , flags=0 , dest _ sockaddr=nil , *controls) -> Integer (27901.0) -
sendmsg(2) を用いてノンブロッキング方式でメッセージを送ります。
sendmsg(2) を用いてノンブロッキング方式でメッセージを送ります。
詳しくは BasicSocket#sendmsg を見てください。
@return 送ったバイト数
@param mesg メッセージ文字列
@param flags フラグ(Socket::MSG_* という定数の bitwise OR を取ったもの)
@param dest_sockaddr 通信先のアドレス
@param controls 補助データの配列
@see BasicSocket#sendmsg -
Etc
:: SC _ CLOCK _ SELECTION -> Integer (27901.0) -
Etc.#sysconf の引数に指定します。
Etc.#sysconf の引数に指定します。
詳細は sysconf(3) を参照してください。 -
Etc
:: SC _ MONOTONIC _ CLOCK -> Integer (27901.0) -
Etc.#sysconf の引数に指定します。
Etc.#sysconf の引数に指定します。
詳細は sysconf(3) を参照してください。 -
File
:: Constants :: NONBLOCK -> Integer (27901.0) -
ファイルが利用可能じゃなくてもブロックしません。 File.openで使用します。
ファイルが利用可能じゃなくてもブロックしません。
File.openで使用します。 -
File
:: Stat # blocks -> Integer (27901.0) -
割り当てられているブロック数を返します。
割り当てられているブロック数を返します。
//emlist[][ruby]{
fs = File::Stat.new($0)
#例
p fs.blocks #=> nil
//} -
Socket
# recvfrom _ nonblock(maxlen , flags=0) -> [String , Addrinfo] (27901.0) -
ソケットをノンブロッキングモードに設定した後、 recvfrom(2) を呼び出します。
ソケットをノンブロッキングモードに設定した後、
recvfrom(2) を呼び出します。
引数、返り値は Socket#recvfrom と同じです。
recvfrom(2) がエラーになった場合、
EAGAIN, EINTR を含め例外 Errno::EXXX が発生します。
Errno::EWOULDBLOCK、Errno::EAGAIN のような待ってからリトライすることが
可能であることを意味する例外には、IO::WaitReadable が extend
されています。
@param maxlen ソケットから受けとるデータの最大値
@param flags フラグ
@rai... -
Socket
:: Constants :: IP _ BLOCK _ SOURCE -> Integer (27901.0) -
Block IPv4 multicast packets with a give source address。 BasicSocket#getsockopt, BasicSocket#setsockopt の第2引数(optname)に使用します。
Block IPv4 multicast packets with a give source address。
BasicSocket#getsockopt, BasicSocket#setsockopt
の第2引数(optname)に使用します。
@see Socket::Constants::IPPROTO_IP,
ip(4freebsd) -
Socket
:: Constants :: IP _ UNBLOCK _ SOURCE -> Integer (27901.0) -
Unblock IPv4 multicast packets with a give source address。 BasicSocket#getsockopt, BasicSocket#setsockopt の第2引数(optname)に使用します。
Unblock IPv4 multicast packets with a give source address。
BasicSocket#getsockopt, BasicSocket#setsockopt
の第2引数(optname)に使用します。
@see Socket::Constants::IPPROTO_IP,
ip(4freebsd) -
Socket
:: IP _ BLOCK _ SOURCE -> Integer (27901.0) -
Block IPv4 multicast packets with a give source address。 BasicSocket#getsockopt, BasicSocket#setsockopt の第2引数(optname)に使用します。
Block IPv4 multicast packets with a give source address。
BasicSocket#getsockopt, BasicSocket#setsockopt
の第2引数(optname)に使用します。
@see Socket::Constants::IPPROTO_IP,
ip(4freebsd) -
Socket
:: IP _ UNBLOCK _ SOURCE -> Integer (27901.0) -
Unblock IPv4 multicast packets with a give source address。 BasicSocket#getsockopt, BasicSocket#setsockopt の第2引数(optname)に使用します。
Unblock IPv4 multicast packets with a give source address。
BasicSocket#getsockopt, BasicSocket#setsockopt
の第2引数(optname)に使用します。
@see Socket::Constants::IPPROTO_IP,
ip(4freebsd) -
StringIO
# read _ nonblock(maxlen , outbuf = nil , exception: true) -> String | nil (27901.0) -
StringIO#readに似ていますが、 exception オプションに false を指定すると EOFError を発生させず nil を返します。
StringIO#readに似ていますが、 exception オプションに false を指定すると EOFError を発生させず nil を返します。
@param len 読み込みたい長さを整数で指定します。StringIO#read と同じです。
@param outbuf 読み込んだ文字列を出力するバッファを文字列で指定します。指定した文字列オブジェクトが
あらかじめ length 長の領域であれば、余計なメモリの割当てが行われません。指定した文字列の
長さが length と異なる場合、その文字列は一旦 length ... -
UDPSocket
# recvfrom _ nonblock(maxlen , flags=0) -> [String , Array] (27901.0) -
ソケットをノンブロッキングモードに設定した後、 recvfrom(2) でソケットからデータを受け取ります。
ソケットをノンブロッキングモードに設定した後、
recvfrom(2) でソケットからデータを受け取ります。
maxlen で受け取るデータの最大バイト数を指定します。
flags はフラグで、Socket::MSG_* の bitwise OR を渡します。
詳しくは recvfrom(2) を参照してください。
返り値はデータの文字列と送り元のアドレス情報の
2要素の配列となります。
recvfrom(2) がエラーになった場合、
Errno::EAGAIN, Errno::EINTR を含め例外 Errno::EXXX が発生します。
Errno::EWOULDBLOCK、Err... -
Thread
:: Mutex # unlock -> self (27637.0) -
mutex のロックを解放します。mutex のロック待ちになっていたスレッドの実行は再開されます。
mutex のロックを解放します。mutex のロック待ちになっていたスレッドの実行は再開されます。
@return self を返します。
例:
m = Mutex.new
begin
m.lock
# critical part
ensure
m.unlock
end
Mutex はロックしたスレッド以外からロックを開放することは出来ません。
ロックしたスレッド以外から unlock が呼ばれると ThreadError が発生します。
m = Mutex.new
m.lock
Thread.new do
m.unlock # => Thr... -
Thread
:: Mutex # locked? -> bool (27619.0) -
mutex がロックされている時、真を返します。
mutex がロックされている時、真を返します。
//emlist[例][ruby]{
m = Mutex.new
m.locked? # => false
m.lock
m.locked? # => true
//} -
Mutex
_ m # mu _ lock -> () (27607.0) -
self をロックします。一度にひとつのスレッドしかロックできません。 既にロックされている mutex に対してロックを行おうとしたスレッドは ロックが解放されるまで、実行が停止されます。
self をロックします。一度にひとつのスレッドしかロックできません。
既にロックされている mutex に対してロックを行おうとしたスレッドは
ロックが解放されるまで、実行が停止されます。 -
File
:: Stat # blockdev? -> bool (27601.0) -
ブロックスペシャルファイルの時に真を返します。
ブロックスペシャルファイルの時に真を返します。
//emlist[][ruby]{
Dir.glob("/dev/*") {|bd|
if File::Stat.new(bd).blockdev?
puts bd
end
}
#例
#...
#=> /dev/hda1
#=> /dev/hda3
#...
//} -
FileTest
. # blockdev?(file) -> bool (27601.0) -
ファイルがブロックスペシャルファイルである時に真を返します。 そうでない場合、ファイルが存在しない場合、あるいはシステムコールに失敗した場合などには false を返します。
ファイルがブロックスペシャルファイルである時に真を返します。
そうでない場合、ファイルが存在しない場合、あるいはシステムコールに失敗した場合などには false を返します。
@param file ファイル名を表す文字列か IO オブジェクトを指定します。
@raise IOError 指定された IO オブジェクト file が既に close されていた場合に発生します。
例:
Dir.glob("/dev/*") { |file|
puts file if FileTest.blockdev?(file)
}
# /dev/disk0
# /dev/di... -
Gem
:: Commands :: LockCommand # spec _ path(gem _ full _ name) -> String (27601.0) -
指定された Gem パッケージの gemspec ファイルのフルパスを返します。
指定された Gem パッケージの gemspec ファイルのフルパスを返します。
@param gem_full_name Gem パッケージの名前を指定します。 -
Monitor
# mon _ locked? -> bool (27601.0) -
モニターがロックされているときに true を返します。
モニターがロックされているときに true を返します。 -
MonitorMixin
# mon _ locked? -> bool (27601.0) -
モニターがロックされているときに true を返します。
モニターがロックされているときに true を返します。 -
Mutex
_ m # locked? -> bool (27601.0) -
self がロックされている時、真を返します。
self がロックされている時、真を返します。 -
Mutex
_ m # mu _ locked? -> bool (27601.0) -
self がロックされている時、真を返します。
self がロックされている時、真を返します。 -
Mutex
_ m # mu _ unlock -> () (27601.0) -
ロックを解放します。ロック待ちになっていたスレッドの実行は再開されます。
ロックを解放します。ロック待ちになっていたスレッドの実行は再開されます。
@raise ThreadError ロックされていない場合に unlock を呼ぶと発生します -
Mutex
_ m # unlock -> () (27601.0) -
ロックを解放します。ロック待ちになっていたスレッドの実行は再開されます。
ロックを解放します。ロック待ちになっていたスレッドの実行は再開されます。
@raise ThreadError ロックされていない場合に unlock を呼ぶと発生します -
Pathname
# blockdev? -> bool (27601.0) -
FileTest.blockdev?(self.to_s) と同じです。
FileTest.blockdev?(self.to_s) と同じです。
@see FileTest.#blockdev? -
Thread
# ignore _ deadlock -> bool (27601.0) -
デッドロック検知を無視する機能のon/offを返します。
デッドロック検知を無視する機能のon/offを返します。
デフォルト値はfalseで、デッドロックが検知されます。
@see Thread#ignore_deadlock= -
ruby 1
. 6 feature (25399.0) -
ruby 1.6 feature ruby version 1.6 は安定版です。この版での変更はバグ修正がメイン になります。
ruby 1.6 feature
ruby version 1.6 は安定版です。この版での変更はバグ修正がメイン
になります。
((<stable-snapshot|URL:ftp://ftp.netlab.co.jp/pub/lang/ruby/stable-snapshot.tar.gz>)) は、日々更新される安定版の最新ソースです。
== 1.6.8 (2002-12-24) -> stable-snapshot
: 2003-01-22: errno
EAGAIN と EWOULDBLOCK が同じ値のシステムで、EWOULDBLOCK がなくなっ
ていま... -
File
# flock(operation) -> 0 | false (19243.0) -
ファイルをロックします。
ファイルをロックします。
ロックを取得するまでブロックされます。
ロックの取得に成功した場合は 0 を返します。
File::LOCK_NB (ノンブロッキング) を指定すると、本来ならブロックされる場合に
ブロックされずに false を返すようになります。
@param operation ロックに対する操作の種類を示す定数を指定します。
どのような定数が利用可能かは以下を参照して下さい。
@raise IOError 自身が close されている場合に発生します。
@raise Errno::EXXX operation に不正な整数を与えた... -
Array
# filter! {|item| block } -> self | nil (19219.0) -
ブロックが真を返した要素を残し、偽を返した要素を自身から削除します。 変更があった場合は self を、 変更がなかった場合には nil を返します。
ブロックが真を返した要素を残し、偽を返した要素を自身から削除します。
変更があった場合は self を、
変更がなかった場合には nil を返します。
//emlist[例][ruby]{
a = %w{ a b c d e f }
a.select! {|v| v =~ /[a-z]/ } # => nil
a # => ["a", "b", "c", "d", "e", "f"]
//}
ブロックが与えられなかった場合は、自身と select! から生成した
Enumerator オブジェクトを返します。
@see Array#keep_if, Array#reject! -
Enumerator
:: Lazy # to _ enum(method = :each , *args) {|*args| block} -> Enumerator :: Lazy (19201.0) -
Object#to_enum と同じですが、Enumerator::Lazy を返します。
Object#to_enum と同じですが、Enumerator::Lazy を返します。
to_enum は「ブロック付きで呼ぶとループを実行し、ブロックを省略した場合は
Enumerator を返す」ようなメソッドを定義するときによく使われます。
このときに lazy 性が正しく引き継がれるように、Lazy#to_enum は
素のEnumerator ではなく Enumerator::Lazy を返すようになっています。
//emlist[例][ruby]{
module Enumerable
# 要素をn回ずつ繰り返すメソッド
# 例:[1,2,3].repeat(2) ... -
Net
:: FTP # get(remotefile , localfile = File . basename(remotefile) , blocksize = DEFAULT _ BLOCKSIZE) -> nil (19201.0) -
サーバ上のファイルを取得します。
サーバ上のファイルを取得します。
Net::FTP#binary の値に従って
Net::FTP#getbinaryfile もしくは
Net::FTP#gettextfile を呼びだします。
binary が偽のとき、つまりテキストモードの
ときには blocksize は無視されます。
@param remotefile 取得対象のリモートのファイル名を与えます。
@param localfile 取得したデータを格納するローカルのファイル名を与えます。
@param blocksize データ転送の単位をバイト単位で与えます。
@raise Net::FTPTempError... -
Net
:: FTP # get(remotefile , localfile = File . basename(remotefile) , blocksize = DEFAULT _ BLOCKSIZE) { |data| . . . . } -> nil (19201.0) -
サーバ上のファイルを取得します。
サーバ上のファイルを取得します。
Net::FTP#binary の値に従って
Net::FTP#getbinaryfile もしくは
Net::FTP#gettextfile を呼びだします。
binary が偽のとき、つまりテキストモードの
ときには blocksize は無視されます。
@param remotefile 取得対象のリモートのファイル名を与えます。
@param localfile 取得したデータを格納するローカルのファイル名を与えます。
@param blocksize データ転送の単位をバイト単位で与えます。
@raise Net::FTPTempError... -
Net
:: FTP # getbinaryfile(remotefile , localfile = File . basename(remotefile) , blocksize = DEFAULT _ BLOCKSIZE) -> nil (19201.0) -
サーバ上のファイルをバイナリモードで取得します。
サーバ上のファイルをバイナリモードで取得します。
サーバー上にある remotefile という名前のファイルを取得し、
ローカルの localfile という名前のファイルに保存します。
localfile が nil である場合には保存はしません。
データの転送は blocksize バイト毎に行なわれます。
ブロックが指定された場合は
データを blocksize バイト受信するごとに、そのデータを
ブロックに渡します。
@param remotefile 取得対象のリモートのファイル名を与えます。
@param localfile 取得したデータを格納するローカルのファイル... -
Net
:: FTP # getbinaryfile(remotefile , localfile = File . basename(remotefile) , blocksize = DEFAULT _ BLOCKSIZE) {|data| . . . } -> nil (19201.0) -
サーバ上のファイルをバイナリモードで取得します。
サーバ上のファイルをバイナリモードで取得します。
サーバー上にある remotefile という名前のファイルを取得し、
ローカルの localfile という名前のファイルに保存します。
localfile が nil である場合には保存はしません。
データの転送は blocksize バイト毎に行なわれます。
ブロックが指定された場合は
データを blocksize バイト受信するごとに、そのデータを
ブロックに渡します。
@param remotefile 取得対象のリモートのファイル名を与えます。
@param localfile 取得したデータを格納するローカルのファイル... -
Net
:: FTP # put(localfile , remotefile = File . basename(localfile) , blocksize = DEFAULT _ BLOCKSIZE) -> nil (19201.0) -
サーバへファイルを転送します。
サーバへファイルを転送します。
Net::FTP#binary の値に従って
Net::FTP#putbinaryfile もしくは
Net::FTP#puttextfile を呼びだします。
binary が偽のとき、つまりテキストモードの
ときには blocksize は無視されます。
@param localfile 転送するローカルのファイル名を与えます。
@param remotefile 転送データを保存するリモートのファイル名を与えます。
@param blocksize データ転送の単位をバイト単位で与えます。
@raise Net::FTPTempError 応答コ... -
Net
:: FTP # put(localfile , remotefile = File . basename(localfile) , blocksize = DEFAULT _ BLOCKSIZE) { |data| . . . . } -> nil (19201.0) -
サーバへファイルを転送します。
サーバへファイルを転送します。
Net::FTP#binary の値に従って
Net::FTP#putbinaryfile もしくは
Net::FTP#puttextfile を呼びだします。
binary が偽のとき、つまりテキストモードの
ときには blocksize は無視されます。
@param localfile 転送するローカルのファイル名を与えます。
@param remotefile 転送データを保存するリモートのファイル名を与えます。
@param blocksize データ転送の単位をバイト単位で与えます。
@raise Net::FTPTempError 応答コ... -
Net
:: FTP # putbinaryfile(localfile , remotefile = File . basename(localfile) , blocksize = DEFAULT _ BLOCKSIZE) -> nil (19201.0) -
サーバにファイルをバイナリモードで転送します。
サーバにファイルをバイナリモードで転送します。
ローカルの localfile という名前のファイルを読みだし、
サーバー上の remotefile という名前のファイルに保存します。
データの転送は blocksize バイト毎に行なわれます。
ブロックが指定された場合は
データを blocksize バイト転送するごとに、そのデータを
ブロックに渡します。
@param localfile 転送するローカルのファイル名を与えます。
@param remotefile 転送データを保存するリモートのファイル名を与えます。
@param blocksize データ転送の単位をバイト単... -
Net
:: FTP # putbinaryfile(localfile , remotefile = File . basename(localfile) , blocksize = DEFAULT _ BLOCKSIZE) {|data| . . . } -> nil (19201.0) -
サーバにファイルをバイナリモードで転送します。
サーバにファイルをバイナリモードで転送します。
ローカルの localfile という名前のファイルを読みだし、
サーバー上の remotefile という名前のファイルに保存します。
データの転送は blocksize バイト毎に行なわれます。
ブロックが指定された場合は
データを blocksize バイト転送するごとに、そのデータを
ブロックに渡します。
@param localfile 転送するローカルのファイル名を与えます。
@param remotefile 転送データを保存するリモートのファイル名を与えます。
@param blocksize データ転送の単位をバイト単... -
String
# each _ grapheme _ cluster {|grapheme _ cluster| block } -> self (19201.0) -
文字列の書記素クラスタに対して繰り返します。
文字列の書記素クラスタに対して繰り返します。
String#each_char と違って、
Unicode Standard Annex #29 (https://unicode.org/reports/tr29/)
で定義された書記素クラスタに対して繰り返します。
//emlist[例][ruby]{
"a\u0300".each_char.to_a.size # => 2
"a\u0300".each_grapheme_cluster.to_a.size # => 1
//}
@see String#grapheme_clusters -
String
# grapheme _ clusters {|grapheme _ cluster| block } -> self (19201.0) -
文字列の書記素クラスタの配列を返します。(self.each_grapheme_cluster.to_a と同じです)
文字列の書記素クラスタの配列を返します。(self.each_grapheme_cluster.to_a と同じです)
//emlist[例][ruby]{
"a\u0300".grapheme_clusters # => ["à"]
//}
ブロックが指定された場合は String#each_grapheme_cluster と同じように動作します。
Ruby 2.6 までは deprecated の警告が出ますが、Ruby 2.7 で警告は削除されました。
@see String#each_grapheme_cluster -
String
# each _ codepoint {|codepoint| block } -> self (18991.0) -
文字列の各コードポイントに対して繰り返します。
文字列の各コードポイントに対して繰り返します。
UTF-8/UTF-16(BE|LE)/UTF-32(BE|LE) 以外のエンコーディングに対しては
各文字のバイナリ表現由来の値になります。
//emlist[例][ruby]{
#coding:UTF-8
"hello わーるど".each_codepoint.to_a
# => [104, 101, 108, 108, 111, 32, 12431, 12540, 12427, 12393]
"hello わーるど".encode('euc-jp').each_codepoint.to_a
# => [104, 101, 108, 1... -
OptionParser
# on _ tail(*arg , &block) -> self (18955.0) -
オプションを取り扱うためのブロックを自身の持つリストの最後に登録します。
オプションを取り扱うためのブロックを自身の持つリストの最後に登録します。
--version や --help の説明をサマリの最後に表示したい時に便利です。
@param arg OptionParser#on と同様です。
@param block OptionParser#on と同様です。
//emlist[例][ruby]{
require "optparse"
opts = OptionParser.new do |opts|
opts.on_head("-i", "--init")
opts.on("-u", "--update")
opts.on_tai...