<?xml version="1.0" encoding="UTF-8" ?> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <title>Queue</title> <meta http-equiv="Content-type" content="text/html; charset=UTF-8" /> <link href="default.css" type="text/css" rel="stylesheet" /> <link href="refm319.html" rel="next" /> <link href="refm317.html" rel="prev" /> <link href="index.html" rel="start" /> </head> <body> <div class="navigator"><span class="navigator">[<a href="index.html">MAIN</a>][<a href="refm543.html">INDEX</a>] [<a href="index.html">TOP</a>][<a href="refm315.html">UP</a>][<a href="refm317.html"><-PREV</a>][<a href="refm319.html">NEXT-></a>]</span></div> <hr /> <h1><a name="L005415" id="L005415">Queue</a></h1> <p>Queueはスレッド間のFIFO(first in first out)の通信路です。ス レッドが空のqueueを読み出そうとすると停止します。queueになんら かの情報が書き込まれると実行は再開されます。</p> <h2><a name="L005416" id="L005416">スーパークラス:</a></h2> <ul> <li><a href="refm030.html">Object</a></li> </ul> <h2><a name="L005417" id="L005417">クラスメソッド:</a></h2> <dl> <dt><a name="L005418" id="L005418"><code>Queue.new</code></a></dt> <dd> <p>新しいqueueオブジェクトを生成します。</p></dd> </dl> <h2><a name="L005419" id="L005419">メソッド:</a></h2> <dl> <dt><a name="L005420" id="L005420"><code>clear</code></a></dt> <dd> <p>queue を空にします。</p></dd> <dt><a name="L005421" id="L005421"><code>empty?</code></a></dt> <dd> <p>queueが空の時、真を返します。</p></dd> <dt><a name="L005422" id="L005422"><code>length</code></a> <dt><a name="L005423" id="L005423"><code>size</code></a></dt> <dd> <p>queueの長さを返します。</p></dd> <dt><a name="L005424" id="L005424"><code>num_waiting</code></a></dt> <dd> <p>queue を待っているスレッドの数を返します。</p></dd> <dt><a name="L005425" id="L005425"><code>pop([<var>non_block</var>])</code></a> <dt><a name="L005426" id="L005426"><code>shift([<var>non_block</var>])</code></a> <dt><a name="L005427" id="L005427"><code>deq([<var>non_block</var>])</code></a></dt> <dd> <p>queueからひとつ値を取り出します。queueが空の時、呼出元のスレッ ドは停止します。省略可能な引数<var>non_block</var>が真であれば、 queueが空の時に例外 <a href="refm103.html">ThreadError</a> が発生します。</p></dd> <dt><a name="L005428" id="L005428"><code>push(<var>value</var>)</code></a> <dt><a name="L005429" id="L005429"><code><var>self</var> << <var>value</var></code></a> <dt><a name="L005430" id="L005430"><code>enq(<var>value</var>)</code></a></dt> <dd> <p>queueの値を追加します。待っているスレッドがいれば実行を再開 させます。</p></dd> </dl> <hr /> <div class="navigator"><span class="navigator">[<a href="index.html">MAIN</a>][<a href="refm543.html">INDEX</a>] [<a href="index.html">TOP</a>][<a href="refm315.html">UP</a>][<a href="refm317.html"><-PREV</a>][<a href="refm319.html">NEXT-></a>]</span></div> </body> </html>