package concurrent
Linear Supertypes
Ordering
- Alphabetic
- By Inheritance
Inherited
- concurrent
- AnyRef
- Any
- Hide All
- Show All
Visibility
- Public
- Protected
Type Members
- trait Actor[F[_], E, A] extends AnyRef
- type Agents[F[_]] = MakeAgent[F, F]
- type Atoms[F[_]] = MakeAtom[F, F]
- trait ContextT[F[+_], C[_[_]], +A] extends AnyRef
a ReaderT analog, allowing to have context referring resulting type for instance you can define
a ReaderT analog, allowing to have context referring resulting type for instance you can define
case class MyCtx[F[_]](state: Ref[F, Int]) type MyProcess[+A] = ContextT[IO, MyCtx, A]
here MyProcess is equivalent to a function alias
type MyProcess[+A] => Ref[MyProcess, Int] => IO[A]
which would be problematic to define using normal
ReaderT
,Env
orZIO
type constructors - trait ContextTInstances extends ContextTInstancesP
- trait ContextTInstancesP extends ContextTInstancesQ
- trait ContextTInstancesQ extends ContextTInstancesR
- trait ContextTInstancesR extends ContextTInstancesS
- trait ContextTInstancesS extends ContextTInstancesT
- trait ContextTInstancesT extends ContextTInstancesU
- trait ContextTInstancesU extends ContextTInstancesV
- trait ContextTInstancesV extends ContextTInstancesW
- trait ContextTInstancesW extends ContextTInstancesX
- trait ContextTInstancesX extends ContextTInstancesY
- trait ContextTInstancesY extends ContextTInstancesZ
- trait ContextTInstancesZ extends AnyRef
- trait Daemon[F[_], E, A] extends Fiber[F, A]
- type Daemon0[F[_]] = Daemon[F, Throwable, Unit]
- trait DaemonInstances extends AnyRef
- type DaemonTask[F[_]] = Daemon[F, Throwable, Unit]
- type DaemonThrow[F[_], A] = Daemon[F, Throwable, A]
- trait Daemonic[F[_], E] extends AnyRef
- trait DaemonicInstances extends AnyRef
- type DaemonicThrow[F[_]] = Daemonic[F, Throwable]
- type Deferreds[F[_]] = MakeDeferred[F, F]
- trait Gatekeeper[F[_], A] extends AnyRef
Semaphore-like structure
- type MVars[F[_]] = MakeMVar[F, F]
- trait MakeAllConcurrent[I[_], F[_]] extends MakeRef[I, F] with MakeMVar[I, F] with MakeSemaphore[I, F] with MakeConcurrent[I, F]
- trait MakeConcurrent[I[_], F[_]] extends MakeAtom[I, F] with MakeGatekeeper[I, F, Long] with MakeQVar[I, F] with MakeDeferred[I, F] with MakeAgent[I, F]
- trait MakeDeferred[I[_], F[_]] extends AnyRef
- trait MakeGatekeeper[I[_], F[_], A] extends AnyRef
- trait MakeMVar[I[_], F[_]] extends AnyRef
- type MakeMutex[I[_], F[_]] = MakeGatekeeper[I, F, Boolean]
- type MakeStoplight[I[_], F[_]] = MakeGatekeeper[I, F, Long]
- type Mutex[F[_]] = Gatekeeper[F, Boolean]
- type Mutexes[F[_]] = MakeGatekeeper[F, F, Boolean]
- trait PolymorphicMakeDefferedInstance extends AnyRef
- type QVars[F[_]] = MakeQVar[F, F]
- trait ReadWrite[F[_], A] extends AnyRef
A purely functional ReadWriteLock.
A purely functional ReadWriteLock.
It declare that only a single writer at a time can modify the data, and predefined count of readers can concurrently read the data.
In other cases, it will be semantically blocked until operation become available. All those wishing to access the data are serviced in order.
- type SerialAgents[F[_]] = MakeSerialAgent[F, F]
- type Stoplight[F[_]] = Gatekeeper[F, Long]
- type Stoplights[F[_]] = MakeGatekeeper[F, F, Long]
- final class TofuCanceledJoinException[F[_], A] extends InterruptedException
- trait TryableDeferreds[F[_]] extends MakeDeferred[F, F]
Deprecated Type Members
Value Members
- def newAtom[F[_]](implicit arg0: Atoms[F]): Applier[F, F]
- def newDeffered[F[_], A](implicit arg0: Deferreds[F]): F[Deferred[F, A]]
- def newGatekeeper[F[_]]: Applier[F, F]
- def newQVar[F[_]](implicit arg0: QVars[F]): Applier[F, F]
- def newVar[F[_]](implicit arg0: MVars[F]): Applier[F, F]
- object Actor
- object ContextT extends ContextTInstances
- object Daemon extends DaemonInstances
Probably Infinite processes
- object Daemonic extends DaemonicInstances
- object Deferreds
- object Gatekeeper
- object MVars
- object MakeDeferred extends PolymorphicMakeDefferedInstance
- object MakeGatekeeper
- object MakeMVar
- object MakeMutex
- object MakeStoplight
- object Mut
- object Mutexes
- object ReadWrite
- object Stoplights