Interface LongSendPort
-
- All Superinterfaces:
java.lang.AutoCloseable
,Port<java.lang.Long>
,PortAutoCloseable
,SendPort<java.lang.Long>
- All Known Subinterfaces:
LongChannel
- All Known Implementing Classes:
QueueLongChannel
public interface LongSendPort extends SendPort<java.lang.Long>
A primitivelong
channel's producer-side interface.
-
-
Method Summary
All Methods Instance Methods Abstract Methods Modifier and Type Method Description void
send(long message)
Sends a message to the channel, possibly blocking until there's room available in the channel.boolean
send(long message, long timeout, java.util.concurrent.TimeUnit unit)
Sends a message to the channel, possibly blocking until there's room available in the channel, but never longer than the specified timeout.boolean
send(long message, Timeout timeout)
Sends a message to the channel, possibly blocking until there's room available in the channel, but never longer than the specified timeout.boolean
trySend(long message)
Sends a message to the channel if the channel has room available.-
Methods inherited from interface co.paralleluniverse.strands.channels.PortAutoCloseable
close, isClosed
-
-
-
-
Method Detail
-
send
void send(long message) throws SuspendExecution, java.lang.InterruptedException
Sends a message to the channel, possibly blocking until there's room available in the channel. If the channel is full, this method may block, throw an exception, silently drop the message, or displace an old message from the channel. The behavior is determined by the channel'sOverflowPolicy
, set at construction time.- Parameters:
message
-- Throws:
SuspendExecution
java.lang.InterruptedException
-
send
boolean send(long message, long timeout, java.util.concurrent.TimeUnit unit) throws SuspendExecution, java.lang.InterruptedException, java.util.concurrent.TimeoutException
Sends a message to the channel, possibly blocking until there's room available in the channel, but never longer than the specified timeout. If the channel is full, this method may block, throw an exception, silently drop the message, or displace an old message from the channel. The behavior is determined by the channel'sOverflowPolicy
, set at construction time.- Parameters:
message
-timeout
- the maximum duration this method is allowed to wait.unit
- the timeout's time unit- Returns:
true
if the message has been sent successfully;false
if the timeout has expired.- Throws:
SuspendExecution
java.lang.InterruptedException
java.util.concurrent.TimeoutException
-
send
boolean send(long message, Timeout timeout) throws SuspendExecution, java.lang.InterruptedException, java.util.concurrent.TimeoutException
Sends a message to the channel, possibly blocking until there's room available in the channel, but never longer than the specified timeout. If the channel is full, this method may block, throw an exception, silently drop the message, or displace an old message from the channel. The behavior is determined by the channel'sOverflowPolicy
, set at construction time.- Parameters:
message
-timeout
- the method will not block for longer than the amount remaining in theTimeout
- Returns:
true
if the message has been sent successfully;false
if the timeout has expired.- Throws:
SuspendExecution
java.lang.InterruptedException
java.util.concurrent.TimeoutException
-
trySend
boolean trySend(long message)
Sends a message to the channel if the channel has room available. This method never blocks.- Parameters:
message
-- Returns:
true
if the message has been sent;false
otherwise.
-
-