package concurrent
- Alphabetic
- Public
- Protected
Type Members
- final case class DirectExecutionContext(logger: Logger) extends ExecutionContextExecutor with BatchingExecutorCanton with Product with Serializable
A light-weight execution context that runs tasks on the thread calling
execute
.A light-weight execution context that runs tasks on the thread calling
execute
. Only use this for running tasks that will terminate very quickly. - abstract class ExecutionContextIdlenessExecutorService extends QueueAwareExecutorService with IdlenessExecutorService with ExecutionContextExecutorService
- class ExecutionContextMonitor extends NamedLogging with FlagCloseable
Debugging utility used to write at regular intervals the executor service queue size into the logfile
Debugging utility used to write at regular intervals the executor service queue size into the logfile
Useful to debug starvation issues.
- final case class ExecutorServiceExtensions[EC <: ExecutorService](executorService: EC)(logger: TracedLogger, timeouts: ProcessingTimeout) extends AutoCloseable with Product with Serializable
- class ForkJoinIdlenessExecutorService extends ExecutionContextIdlenessExecutorService
- trait FutureSupervisor extends AnyRef
Alert if a future does not complete within the prescribed duration
Alert if a future does not complete within the prescribed duration
We use future based synchronisation in some places, where we use a promise to only kick off an action once a promise is completed. This can lead to deadlocks where something does not start because we never complete the promise. This leads to hard to debug situations. We can support debugging by tracking such futures. As this is costly, we'll turn this off in production.
- See also
HasFutureSupervision for a mixin
- trait HasFutureSupervision extends AnyRef
Mixin-trait for classes that want to run some futures with supervision using a FutureSupervisor strategy
- trait IdlenessExecutorService extends ExecutorService
- class SupervisedPromise[T] extends Promise[T]
Promise that will log a message after logAfter if it has not been completed.
- class ThreadPoolIdlenessExecutorService extends ExecutionContextIdlenessExecutorService
Value Members
- object DirectExecutionContext extends Serializable
- object FutureSupervisor
- object Threading
Factories and utilities for dealing with threading.