trait SelectableChannel extends BlockingChannel
A channel that can be multiplexed via a zio.nio.channels.Selector.
- Alphabetic
- By Inheritance
- SelectableChannel
- BlockingChannel
- Channel
- IOCloseable
- AnyRef
- Any
- Hide All
- Show All
- Public
- Protected
Type Members
- abstract type BlockingOps
The blocking operations supported by this channel.
The blocking operations supported by this channel.
- Definition Classes
- BlockingChannel
- abstract type NonBlockingOps
The non-blocking operations supported by this channel.
Abstract Value Members
- abstract val channel: java.nio.channels.SelectableChannel
- Attributes
- protected
- Definition Classes
- SelectableChannel → Channel
- abstract def makeBlockingOps: BlockingOps
- Attributes
- protected
- abstract def makeNonBlockingOps: NonBlockingOps
- Attributes
- protected
Concrete Value Members
- final def !=(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
- final def ##: Int
- Definition Classes
- AnyRef → Any
- final def ==(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
- final def asInstanceOf[T0]: T0
- Definition Classes
- Any
- final def blockingLock(implicit trace: Trace): UIO[AnyRef]
- def clone(): AnyRef
- Attributes
- protected[lang]
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.CloneNotSupportedException]) @native()
- final def close(implicit trace: Trace): IO[IOException, Unit]
Closes this channel.
Closes this channel.
- Definition Classes
- Channel → IOCloseable
- final def configureBlocking(block: Boolean)(implicit trace: Trace): IO[IOException, Unit]
- final def eq(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
- def equals(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef → Any
- def finalize(): Unit
- Attributes
- protected[lang]
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.Throwable])
- final def flatMapBlocking[R, E >: IOException, A](f: (BlockingOps) => ZIO[R, E, A])(implicit trace: Trace): ZIO[R, E, A]
Puts this channel in blocking mode (if applicable) and performs a set of blocking operations.
Puts this channel in blocking mode (if applicable) and performs a set of blocking operations. Uses the standard ZIO
Blocking
service to run the provided effect on the blocking thread pool. Installs interrupt handling so that if the ZIO fiber is interrupted, this channel will be closed, which will unblock any currently blocked operations.- f
Given a
BlockingOps
argument appropriate for this channel type, produces an effect value containing blocking operations.
- Definition Classes
- SelectableChannel → BlockingChannel
- final def flatMapNonBlocking[R, E >: IOException, A](f: (NonBlockingOps) => ZIO[R, E, A])(implicit trace: Trace): ZIO[R, E, A]
Puts this channel into non-blocking mode and performs a set of non-blocking operations.
Puts this channel into non-blocking mode and performs a set of non-blocking operations.
- f
Uses the
NonBlockingOps
appropriate for this channel type to produce non-blocking effects.
- final def getClass(): Class[_ <: AnyRef]
- Definition Classes
- AnyRef → Any
- Annotations
- @native()
- def hashCode(): Int
- Definition Classes
- AnyRef → Any
- Annotations
- @native()
- final def isBlocking(implicit trace: Trace): UIO[Boolean]
- final def isInstanceOf[T0]: Boolean
- Definition Classes
- Any
- final def isOpen(implicit trace: Trace): UIO[Boolean]
Tells whether or not this channel is open.
Tells whether or not this channel is open.
- Definition Classes
- Channel
- final def isRegistered(implicit trace: Trace): UIO[Boolean]
- final def keyFor(sel: Selector)(implicit trace: Trace): UIO[Option[SelectionKey]]
- final def ne(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
- final def nioBlocking[R, E, A](zioEffect: ZIO[R, E, A])(implicit trace: Trace): ZIO[R, E, A]
- Attributes
- protected
- Definition Classes
- BlockingChannel
- final def notify(): Unit
- Definition Classes
- AnyRef
- Annotations
- @native()
- final def notifyAll(): Unit
- Definition Classes
- AnyRef
- Annotations
- @native()
- final def provider(implicit trace: Trace): UIO[SelectorProvider]
- final def register(selector: Selector, ops: Set[Operation] = Set.empty, attachment: Option[AnyRef] = None)(implicit trace: Trace): IO[ClosedChannelException, SelectionKey]
Registers this channel with the given selector, returning a selection key.
Registers this channel with the given selector, returning a selection key.
- selector
The selector to register with.
- ops
The key's interest set will be created with these operations.
- attachment
The object to attach to the key, if any.
- returns
The new
SelectionKey
.
- final def synchronized[T0](arg0: => T0): T0
- Definition Classes
- AnyRef
- def toString(): String
- Definition Classes
- AnyRef → Any
- final def validOps(implicit trace: Trace): UIO[Set[Operation]]
- final def wait(): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.InterruptedException])
- final def wait(arg0: Long, arg1: Int): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.InterruptedException])
- final def wait(arg0: Long): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.InterruptedException]) @native()