Class: Concurrent::Channel::Buffer::Dropping
- Defined in:
- lib/concurrent-ruby-edge/concurrent/channel/buffer/dropping.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/dropping.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/dropping.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 but the item will be discarded. The item will not
be placed into the buffer (no transfer will occur).
|
# File 'lib/concurrent-ruby-edge/concurrent/channel/buffer/dropping.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 but the item will be discarded. The item will not
be placed into the buffer (no transfer will occur).
|
# File 'lib/concurrent-ruby-edge/concurrent/channel/buffer/dropping.rb', line 14
|