diff options
Diffstat (limited to 'thread_sync.rb')
| -rw-r--r-- | thread_sync.rb | 68 |
1 files changed, 0 insertions, 68 deletions
diff --git a/thread_sync.rb b/thread_sync.rb deleted file mode 100644 index f8fa69900b..0000000000 --- a/thread_sync.rb +++ /dev/null @@ -1,68 +0,0 @@ -class Thread - class Queue - # call-seq: - # pop(non_block=false, timeout: nil) - # - # Retrieves data from the queue. - # - # If the queue is empty, the calling thread is suspended until data is pushed - # onto the queue. If +non_block+ is true, the thread isn't suspended, and - # +ThreadError+ is raised. - # - # If +timeout+ seconds have passed and no data is available +nil+ is - # returned. If +timeout+ is +0+ it returns immediately. - def pop(non_block = false, timeout: nil) - if non_block && timeout - raise ArgumentError, "can't set a timeout if non_block is enabled" - end - Primitive.rb_queue_pop(non_block, timeout) - end - alias_method :deq, :pop - alias_method :shift, :pop - end - - class SizedQueue - # call-seq: - # pop(non_block=false, timeout: nil) - # - # Retrieves data from the queue. - # - # If the queue is empty, the calling thread is suspended until data is - # pushed onto the queue. If +non_block+ is true, the thread isn't - # suspended, and +ThreadError+ is raised. - # - # If +timeout+ seconds have passed and no data is available +nil+ is - # returned. If +timeout+ is +0+ it returns immediately. - def pop(non_block = false, timeout: nil) - if non_block && timeout - raise ArgumentError, "can't set a timeout if non_block is enabled" - end - Primitive.rb_szqueue_pop(non_block, timeout) - end - alias_method :deq, :pop - alias_method :shift, :pop - - # call-seq: - # push(object, non_block=false, timeout: nil) - # enq(object, non_block=false, timeout: nil) - # <<(object) - # - # Pushes +object+ to the queue. - # - # If there is no space left in the queue, waits until space becomes - # available, unless +non_block+ is true. If +non_block+ is true, the - # thread isn't suspended, and +ThreadError+ is raised. - # - # If +timeout+ seconds have passed and no space is available +nil+ is - # returned. If +timeout+ is +0+ it returns immediately. - # Otherwise it returns +self+. - def push(object, non_block = false, timeout: nil) - if non_block && timeout - raise ArgumentError, "can't set a timeout if non_block is enabled" - end - Primitive.rb_szqueue_push(object, non_block, timeout) - end - alias_method :enq, :push - alias_method :<<, :push - end -end |
