Fiber

cats.effect.kernel.Fiber
trait Fiber[F[_], E, A] extends Serializable

A datatype that represents a handle to a fiber and allows for waiting and cancelation against that fiber.

Attributes

See also:

GenSpawn documentation for more detailed information on the concurrency of fibers.

Source:
Fiber.scala
Graph
Supertypes
trait Serializable
class Object
trait Matchable
class Any

Members list

Concise view

Value members

Abstract methods

def cancel: F[Unit]

Requests the cancelation of the fiber bound to this Fiber handle and awaits its finalization.

Requests the cancelation of the fiber bound to this Fiber handle and awaits its finalization.

cancel semantically blocks the caller until finalization of the cancellee has completed. This means that if the cancellee is currently masked, cancel will block until it is unmasked and finalized.

Cancelation is idempotent, so repeated calls to cancel simply block until finalization is complete. If cancel is called after finalization is complete, it will return immediately.

cancel is uncancelable; a fiber that is canceling another fiber is masked from cancelation.

Attributes

See also:

GenSpawn documentation for more details on cancelation

Source:
Fiber.scala
def join: F[Outcome[F, E, A]]

Awaits the completion of the fiber bound to this Fiber and returns its Outcome once it completes.

Awaits the completion of the fiber bound to this Fiber and returns its Outcome once it completes.

Attributes

Source:
Fiber.scala

Concrete methods

def joinWith(onCancel: F[A])(implicit F: MonadCancel[F, E]): F[A]

Awaits the completion of the bound fiber and returns its result once it completes.

Awaits the completion of the bound fiber and returns its result once it completes.

If the fiber completes with Outcome.Succeeded, the successful value is returned. If the fiber completes with Outcome.Errored, the error is raised. If the fiber completes with Outcome.Canceled, onCancel is run.

Attributes

Source:
Fiber.scala
def joinWithNever(implicit F: GenSpawn[F, E]): F[A]

Awaits the completion of the bound fiber and returns its result once it completes.

Awaits the completion of the bound fiber and returns its result once it completes.

If the fiber completes with Outcome.Succeeded, the successful value is returned. If the fiber completes with Outcome.Errored, the error is raised. If the fiber completes with Outcome.Canceled, the caller is indefinitely suspended without termination.

Attributes

Source:
Fiber.scala
def joinWithUnit(implicit F: MonadCancel[F, E], ev: Unit <:< A): F[A]

Awaits the completion of the bound fiber and returns its result once it completes.

Awaits the completion of the bound fiber and returns its result once it completes.

If the fiber completes with Outcome.Succeeded, the successful value is returned. If the fiber completes with Outcome.Errored, the error is raised. If the fiber completes with Outcome.Canceled, the result is ignored.

Attributes

Source:
Fiber.scala