Class: Concurrent::Channel::Buffer::Sliding
- Defined in:
- lib/concurrent-ruby-edge/concurrent/channel/buffer/sliding.rb
Overview
Instance Method Summary collapse
-
#blocking? ⇒ Boolean
Predicate indicating if this buffer will block #put operations once it reaches its maximum capacity.
-
#full? ⇒ Boolean
Predicate indicating if the buffer is full.
-
#offer(item) ⇒ Boolean
Put an item onto the buffer if possible.
-
#put(item) ⇒ Boolean
Put an item onto the buffer if possible.
Constructor Details
This class inherits a constructor from Concurrent::Channel::Buffer::Base
Instance Method Details
#blocking? ⇒ Boolean
Predicate indicating if this buffer will block #put operations once it reaches its maximum capacity.
Always returns false
.
36 37 38 |
# File 'lib/concurrent-ruby-edge/concurrent/channel/buffer/sliding.rb', line 36 def blocking? false end |
#full? ⇒ Boolean
Predicate indicating if the buffer is full.
Always returns false
.
|
# File 'lib/concurrent-ruby-edge/concurrent/channel/buffer/sliding.rb', line 28
|
#offer(item) ⇒ Boolean
Put an item onto the buffer if possible. If the buffer is open but
unable to add an item, probably due to being full, the method will
return immediately. Similarly, the method will return immediately
when the buffer is closed. A return value of false
does not
necessarily indicate that the buffer is closed, just that the item
could not be added.
When the buffer is full, this method will return true
immediately and the item will be inserted, but the oldest
elements in the buffer will be discarded (not transferred).
|
# File 'lib/concurrent-ruby-edge/concurrent/channel/buffer/sliding.rb', line 21
|
#put(item) ⇒ Boolean
Put an item onto the buffer if possible. If the buffer is open but not able to accept the item the calling thread will block until the item can be put onto the buffer.
When the buffer is full, this method will return true
immediately and the item will be inserted, but the oldest
elements in the buffer will be discarded (not transferred).
|
# File 'lib/concurrent-ruby-edge/concurrent/channel/buffer/sliding.rb', line 14
|