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 val blockingLock: UIO[AnyRef]
- def clone(): AnyRef
- Attributes
- protected[lang]
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.CloneNotSupportedException]) @native()
- final def close: IO[IOException, Unit]
Closes this channel.
Closes this channel.
- Definition Classes
- Channel → IOCloseable
- final def configureBlocking(block: Boolean): 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 getClass(): Class[_ <: AnyRef]
- Definition Classes
- AnyRef → Any
- Annotations
- @native()
- def hashCode(): Int
- Definition Classes
- AnyRef → Any
- Annotations
- @native()
- final val isBlocking: UIO[Boolean]
- final def isInstanceOf[T0]: Boolean
- Definition Classes
- Any
- final def isOpen: UIO[Boolean]
Tells whether or not this channel is open.
Tells whether or not this channel is open.
- Definition Classes
- Channel
- final val isRegistered: UIO[Boolean]
- final def keyFor(sel: Selector): UIO[Option[SelectionKey]]
- final def ne(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
- final def nioBlocking[R, E, A](zioEffect: ZIO[R, E, A]): ZIO[R with Blocking, 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 val provider: UIO[SelectorProvider]
- final def register(selector: Selector, ops: Set[Operation] = Set.empty, attachment: Option[AnyRef] = None): 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 useBlocking[R, E >: IOException, A](f: (BlockingOps) => ZIO[R, E, A]): ZIO[R with Blocking, 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
Blockingservice 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
BlockingOpsargument appropriate for this channel type, produces an effect value containing blocking operations.
- Definition Classes
- SelectableChannel → BlockingChannel
- final def useNonBlocking[R, E >: IOException, A](f: (NonBlockingOps) => ZIO[R, E, A]): 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
NonBlockingOpsappropriate for this channel type to produce non-blocking effects.
- final def useNonBlockingManaged[R, E >: IOException, A](f: (NonBlockingOps) => ZManaged[R, E, A]): ZManaged[R, E, A]
Puts this channel into non-blocking mode and performs a set of non-blocking operations as a managed resource.
Puts this channel into non-blocking mode and performs a set of non-blocking operations as a managed resource.
- f
Uses the
NonBlockingOpsappropriate for this channel type to produce non-blocking effects.
- final val validOps: 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()