Overview
-
module Async-
class Barrier- public
A general purpose synchronisation primitive, which allows one task to wait for a number of other tasks to complete. It can be used in conjunction with
class Async::Semaphore. -
class Clock- public
A convenient wrapper around the internal monotonic clock.
-
class Condition- public
A synchronization primitive, which allows fibers to wait until a particular condition is (edge) triggered.
-
module ConsoleShims for the console gem, redirecting warnings and above to
Kernel#warn. -
class Deadline- public
Represents a deadline timeout with decrementing remaining time.
-
module ZeroSingleton module for immediate timeouts (zero or negative).
-
class IdlerA load balancing mechanism that can be used process work when the system is idle.
-
class LimitedQueue- public
A thread-safe queue which limits the number of items that can be enqueued.
-
class ListA general doublely linked list. This is used internally by
class Async::Barrierandclass Async::Conditionto manage child tasks.-
class NodeA linked list Node.
-
class Iterator
-
class ChildrenA list of children tasks.
-
class NodeA node in a tree, used for implementing the task hierarchy.
-
class Notification- public
A synchronization primitive, which allows fibers to wait until a notification is received. Does not block the task which signals the notification. Waiting tasks are resumed on next iteration of the reactor.
-
class PriorityQueue- public
A queue which allows items to be processed in priority order of consumers.
-
class Promise- public
A promise represents a value that will be available in the future.
-
class CancelException used to indicate cancellation.
-
class Queue- asynchronous
- public
A thread-safe queue which allows items to be processed in order.
-
class ClosedError- public
An error raised when trying to enqueue items to a closed queue.
-
class ReactorA wrapper around the the scheduler which binds it to the current thread automatically.
-
class SchedulerHandles scheduling of fibers. Implements the fiber scheduler interface.
-
class ClosedErrorRaised when an operation is attempted on a closed scheduler.
-
module BlockingOperationWaitUsed to augment the scheduler to add support for blocking operations.
-
class FiberInterruptUsed to defer stopping the current task until later.
-
-
class Semaphore- public
A synchronization primitive, which limits access to a given resource.
-
class StopRaised when a task is explicitly stopped.
-
class CauseRepresents the source of the stop operation.
-
class LaterUsed to defer stopping the current task until later.
-
-
class TimeoutError- public
Raised if a timeout occurs on a specific Fiber. Handled gracefully by
Task. -
class Task- public
-
class FinishedErrorRaised when a child task is created within a task that has finished execution.
-
class Timeout- public
Represents a flexible timeout that can be rescheduled or extended.
-
class CancelledErrorRaised when attempting to reschedule a cancelled timeout.
-
class Variable- deprecated
A synchronization primitive that allows one task to wait for another task to resolve a value.
-
class Waiter- deprecated
A composable synchronization primitive, which allows one task to wait for a number of other tasks to complete. It can be used in conjunction with
class Async::Semaphoreand/orclass Async::Barrier.
-
-
module KernelExtensions to all Ruby objects.
-
Provider