Class InMemoryTransportBinding
เนื้อหานี้ยังไม่ได้แปลเป็นภาษาไทย แสดงเป็นภาษาอังกฤษแทน
Namespace: Cephalon.Behaviors.Messaging.Bindings
Assembly: Cephalon.Behaviors.Messaging.dll
In-memory messaging transport binding (transport ID: “in-memory”).
Uses a bounded
public sealed class InMemoryTransportBinding : IMessagingBehaviorBinding, IAsyncDisposableInheritance
Section titled “Inheritance”object ← InMemoryTransportBinding
Implements
Section titled “Implements”IMessagingBehaviorBinding, IAsyncDisposable
Inherited Members
Section titled “Inherited Members”object.Equals(object?), object.Equals(object?, object?), object.GetHashCode(), object.GetType(), object.ReferenceEquals(object?, object?), object.ToString()
Constructors
Section titled “Constructors”InMemoryTransportBinding(InMemoryTransportOptions, ILogger<InMemoryTransportBinding>)
Section titled “ InMemoryTransportBinding(InMemoryTransportOptions, ILogger<InMemoryTransportBinding>)”Initializes a new instance of
public InMemoryTransportBinding(InMemoryTransportOptions options, ILogger<InMemoryTransportBinding> logger)Parameters
Section titled “Parameters”options InMemoryTransportOptions
The in-memory transport options.
logger ILogger<InMemoryTransportBinding>
The logger for this binding.
Properties
Section titled “Properties”TransportId
Section titled “ TransportId”Gets the canonical transport identifier (e.g. “rabbitmq”, “kafka”, “in-memory”).
public string TransportId { get; }Property Value
Section titled “Property Value”Methods
Section titled “Methods”DisposeAsync()
Section titled “ DisposeAsync()”Performs application-defined tasks associated with freeing, releasing, or resetting unmanaged resources asynchronously.
public ValueTask DisposeAsync()Returns
Section titled “Returns”A task that represents the asynchronous dispose operation.
SendAsync(object, IBehaviorContext, CancellationToken)
Section titled “ SendAsync(object, IBehaviorContext, CancellationToken)”Enqueues a message for dispatch. Safe to call from multiple threads. Will apply backpressure (async wait) when the channel reaches its configured capacity.
public Task SendAsync(object input, IBehaviorContext context, CancellationToken ct = default)Parameters
Section titled “Parameters”input object
The input message object.
context IBehaviorContext
The behavior execution context.
A cancellation token.
Returns
Section titled “Returns”A task that completes when the message has been written to the channel.
StartAsync(BehaviorTopologyDescriptor, BehaviorDispatcher, CancellationToken)
Section titled “ StartAsync(BehaviorTopologyDescriptor, BehaviorDispatcher, CancellationToken)”Starts consuming messages for the given behavior topology and dispatches them. Called once per descriptor per transport; implementations should be idempotent.
public Task StartAsync(BehaviorTopologyDescriptor descriptor, BehaviorDispatcher dispatcher, CancellationToken ct)Parameters
Section titled “Parameters”descriptor BehaviorTopologyDescriptor
The behavior topology descriptor.
dispatcher BehaviorDispatcher
The behavior dispatcher to invoke for each received message.
A token that signals when the host is shutting down.
Returns
Section titled “Returns”A task that completes when the binding is fully started.
StopAsync(CancellationToken)
Section titled “ StopAsync(CancellationToken)”Stops the binding and releases transport resources.
public Task StopAsync(CancellationToken ct)Parameters
Section titled “Parameters”A token that cancels the graceful-stop wait.
Returns
Section titled “Returns”A task that completes when the binding has fully stopped.