Search Results for

    Show / Hide Table of Contents

    Class ScatterGatherFirstCompletedPool

    This class represents a Pool router that sends messages to a Routee determined using scatter-gather-first-completed. This process has the router send a message to all of its routees. The first response is used and the remaining are discarded. If the none of the routees respond within a specified time limit, a timeout failure occurs.

    Inheritance
    object
    RouterConfig
    Pool
    ScatterGatherFirstCompletedPool
    Implements
    ISurrogated
    IEquatable<RouterConfig>
    IEquatable<Pool>
    Inherited Members
    Pool.NrOfInstances
    Pool.UsePoolDispatcher
    Pool.Resizer
    Pool.SupervisorStrategy
    Pool.Props(Props)
    Pool.StopRouterWhenAllRouteesRemoved
    Pool.CreateRouterActor()
    Pool.DefaultSupervisorStrategy
    Pool.Equals(Pool)
    Pool.Equals(object)
    Pool.GetHashCode()
    RouterConfig.RouterDispatcher
    RouterConfig.RoutingLogicController(RoutingLogic)
    RouterConfig.IsManagementMessage(object)
    RouterConfig.VerifyConfig(ActorPath)
    RouterConfig.Equals(RouterConfig)
    object.Equals(object, object)
    object.GetType()
    object.ReferenceEquals(object, object)
    object.ToString()
    Namespace: Akka.Routing
    Assembly: Akka.dll
    Syntax
    public sealed class ScatterGatherFirstCompletedPool : Pool, ISurrogated, IEquatable<RouterConfig>, IEquatable<Pool>

    Constructors

    | Edit this page View Source

    ScatterGatherFirstCompletedPool(Config)

    Initializes a new instance of the ScatterGatherFirstCompletedPool class.

    Declaration
    public ScatterGatherFirstCompletedPool(Config config)
    Parameters
    Type Name Description
    Config config

    The configuration to use to lookup paths used by the group router.

    note

    'within' must be defined in the provided configuration.

    | Edit this page View Source

    ScatterGatherFirstCompletedPool(int)

    Initializes a new instance of the ScatterGatherFirstCompletedPool class.

    note

    A ScatterGatherFirstCompletedPool configured in this way uses the DefaultSupervisorStrategy supervisor strategy.

    Declaration
    public ScatterGatherFirstCompletedPool(int nrOfInstances)
    Parameters
    Type Name Description
    int nrOfInstances

    The initial number of routees in the pool.

    | Edit this page View Source

    ScatterGatherFirstCompletedPool(int, Resizer, TimeSpan, SupervisorStrategy, string, bool)

    Initializes a new instance of the ScatterGatherFirstCompletedPool class.

    Declaration
    public ScatterGatherFirstCompletedPool(int nrOfInstances, Resizer resizer, TimeSpan within, SupervisorStrategy supervisorStrategy, string routerDispatcher, bool usePoolDispatcher = false)
    Parameters
    Type Name Description
    int nrOfInstances

    The initial number of routees in the pool.

    Resizer resizer

    The resizer to use when dynamically allocating routees to the pool.

    TimeSpan within

    The amount of time to wait for a response.

    SupervisorStrategy supervisorStrategy

    The strategy to use when supervising the pool.

    string routerDispatcher

    The dispatcher to use when passing messages to the routees.

    bool usePoolDispatcher

    true to use the pool dispatcher; otherwise false.

    | Edit this page View Source

    ScatterGatherFirstCompletedPool(int, TimeSpan)

    Initializes a new instance of the ScatterGatherFirstCompletedPool class.

    Declaration
    public ScatterGatherFirstCompletedPool(int nrOfInstances, TimeSpan within)
    Parameters
    Type Name Description
    int nrOfInstances

    The initial number of routees in the pool.

    TimeSpan within

    The amount of time to wait for a response.

    Properties

    | Edit this page View Source

    Within

    The amount of time to wait for a response.

    Declaration
    public TimeSpan Within { get; }
    Property Value
    Type Description
    TimeSpan

    Methods

    | Edit this page View Source

    CreateRouter(ActorSystem)

    Creates a router that is responsible for routing messages to routees within the provided system.

    Declaration
    public override Router CreateRouter(ActorSystem system)
    Parameters
    Type Name Description
    ActorSystem system

    The actor system that owns this router.

    Returns
    Type Description
    Router

    The newly created router tied to the given system.

    Overrides
    RouterConfig.CreateRouter(ActorSystem)
    | Edit this page View Source

    GetNrOfInstances(ActorSystem)

    Used by the Akka.Routing.RoutedActorCell to determine the initial number of routees.

    Declaration
    public override int GetNrOfInstances(ActorSystem system)
    Parameters
    Type Name Description
    ActorSystem system

    The actor system that owns this router.

    Returns
    Type Description
    int

    The number of routees associated with this pool.

    Overrides
    Pool.GetNrOfInstances(ActorSystem)
    | Edit this page View Source

    ToSurrogate(ActorSystem)

    Creates a surrogate representation of the current ScatterGatherFirstCompletedPool.

    Declaration
    public override ISurrogate ToSurrogate(ActorSystem system)
    Parameters
    Type Name Description
    ActorSystem system

    The actor system that owns this router.

    Returns
    Type Description
    ISurrogate

    The surrogate representation of the current ScatterGatherFirstCompletedPool.

    Overrides
    RouterConfig.ToSurrogate(ActorSystem)
    | Edit this page View Source

    WithDispatcher(string)

    Creates a new ScatterGatherFirstCompletedPool router with a given dispatcher id.

    note

    This method is immutable and returns a new instance of the router.

    Declaration
    public ScatterGatherFirstCompletedPool WithDispatcher(string dispatcher)
    Parameters
    Type Name Description
    string dispatcher

    The dispatcher id used to configure the new router.

    Returns
    Type Description
    ScatterGatherFirstCompletedPool

    A new router with the provided dispatcher id.

    | Edit this page View Source

    WithFallback(RouterConfig)

    Configure the current router with an auxiliary router for routes that it does not know how to handle.

    Declaration
    public override RouterConfig WithFallback(RouterConfig routerConfig)
    Parameters
    Type Name Description
    RouterConfig routerConfig

    The router to use as an auxiliary source.

    Returns
    Type Description
    RouterConfig

    The router configured with the auxiliary information.

    Overrides
    RouterConfig.WithFallback(RouterConfig)
    | Edit this page View Source

    WithResizer(Resizer)

    Creates a new ScatterGatherFirstCompletedPool router with a given Resizer.

    note

    This method is immutable and returns a new instance of the router.

    Declaration
    public ScatterGatherFirstCompletedPool WithResizer(Resizer resizer)
    Parameters
    Type Name Description
    Resizer resizer

    The Resizer used to configure the new router.

    Returns
    Type Description
    ScatterGatherFirstCompletedPool

    A new router with the provided resizer.

    | Edit this page View Source

    WithSupervisorStrategy(SupervisorStrategy)

    Creates a new ScatterGatherFirstCompletedPool router with a given SupervisorStrategy.

    note

    This method is immutable and returns a new instance of the router.

    Declaration
    public ScatterGatherFirstCompletedPool WithSupervisorStrategy(SupervisorStrategy strategy)
    Parameters
    Type Name Description
    SupervisorStrategy strategy

    The SupervisorStrategy used to configure the new router.

    Returns
    Type Description
    ScatterGatherFirstCompletedPool

    A new router with the provided strategy.

    Implements

    ISurrogated
    IEquatable<T>
    IEquatable<T>

    Extension Methods

    ObjectExtensions.IsDefaultForType<T>(T)
    ObjectExtensions.AsOption<T>(T)
    Extensions.AsInstanceOf<T>(object)
    In this article
    • githubEdit this page
    • View Source
    Back to top
    Contribute
    • Project Chat
    • Discussion Forum
    • Source Code
    Support
    • Akka.NET Support Plans
    • Akka.NET Observability Tools
    • Akka.NET Training & Consulting
    Maintained By
    • Petabridge - The Akka.NET Company
    • Learn Akka.NET