Method: Fairy::FileMarshaledQueue#push_all

Defined in:
lib/fairy/share/port-marshaled-queue.rb

#push_all(buf) ⇒ Object



222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
# File 'lib/fairy/share/port-marshaled-queue.rb', line 222

def push_all(buf)
  @push_queue_mutex.synchronize do
	@push_queue.concat buf
	if @push_queue.size > @min_chunk_no || 
 @push_queue.last == :END_OF_STREAM
	  @buffers_queue_mon.synchronize do
 @push_queue.pop if e == :END_OF_STREAM
 store_2ndmemory(@push_queue)
 @buffers_queue.push e if e == :END_OF_STREAM

 @push_queue = []
 @buffers_queue_cv.broadcast
	  end
	end
  end
end