Interface IntSendPort

  • All Superinterfaces:
    java.lang.AutoCloseable, Port<java.lang.Integer>, PortAutoCloseable, SendPort<java.lang.Integer>
    All Known Subinterfaces:
    IntChannel
    All Known Implementing Classes:
    QueueIntChannel

    public interface IntSendPort
    extends SendPort<java.lang.Integer>
    A primitive int channel's producer-side interface.
    • Method Summary

      All Methods Instance Methods Abstract Methods 
      Modifier and Type Method Description
      void send​(int message)
      Sends a message to the channel, possibly blocking until there's room available in the channel.
      boolean send​(int 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​(int 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​(int message)
      Sends a message to the channel if the channel has room available.
    • Method Detail

      • send

        void send​(int 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's OverflowPolicy, set at construction time.
        Parameters:
        message -
        Throws:
        SuspendExecution
        java.lang.InterruptedException
      • send

        boolean send​(int 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's OverflowPolicy, 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​(int 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's OverflowPolicy, set at construction time.
        Parameters:
        message -
        timeout - the method will not block for longer than the amount remaining in the Timeout
        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​(int 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.