HEX
Server: Apache
System: Windows NT MAGNETO-ARM 10.0 build 22000 (Windows 10) AMD64
User: Michel (0)
PHP: 7.4.7
Disabled: NONE
Upload Files
File: C:/Ruby27-x64/share/ri/2.7.0/system/Queue/cdesc-Queue.ri
U:RDoc::NormalClass[iI"
Queue:ET@I"Object;To:RDoc::Markup::Document:@parts[o;;[o:RDoc::Markup::Paragraph;[	I"GThe Queue class implements multi-producer, multi-consumer queues. ;TI"FIt is especially useful in threaded programming when information ;TI"Hmust be exchanged safely between multiple threads. The Queue class ;TI"3implements all the required locking semantics.;To:RDoc::Markup::BlankLineo;	;[I"IThe class implements FIFO type of queue. In a FIFO queue, the first ;TI")tasks added are the first retrieved.;T@o;	;[I"
Example:;T@o:RDoc::Markup::Verbatim;[I"queue = Queue.new
;TI"
;TI"producer = Thread.new do
;TI"  5.times do |i|
;TI"+     sleep rand(i) # simulate expense
;TI"     queue << i
;TI"     puts "#{i} produced"
;TI"  end
;TI"	end
;TI"
;TI"consumer = Thread.new do
;TI"  5.times do |i|
;TI"     value = queue.pop
;TI"-     sleep rand(i/2) # simulate expense
;TI"#     puts "consumed #{value}"
;TI"  end
;TI"	end
;TI"
;TI"consumer.join;T:@format0:
@fileI"thread_sync.c;T:0@omit_headings_from_table_of_contents_below0;
0;0[[[[[I"
class;T[[:public[[I"new;TI" ../ruby-2.7.7/thread_sync.c;T[:protected[[:private[[I"
instance;T[[;[[I"<<;T@<[I"
clear;T@<[I"
close;T@<[I"closed?;T@<[I"deq;T@<[I"empty?;T@<[I"enq;T@<[I"length;T@<[I"num_waiting;T@<[I"pop;T@<[I"	push;T@<[I"
shift;T@<[I"	size;T@<[;[[;[[[U:RDoc::Context::Section[i0o;;[;
0;0[I"thread_sync.c;T@0cRDoc::TopLevel