IRpcMultiplexedChannel class abstract
Multiplexed message channel -- sits between a raw transport and IRpcTransport.
Converts between a transport-specific wire format and RpcTransportMessage. Stream ID management, security policy, and health checks are handled by RpcChannelTransport which wraps this interface.
Built-in implementations:
RpcFrameMultiplexedChannelwraps an IRpcChannel with frame encodingRpcDirectMultiplexedChannelpasses messages directly (zero-copy)
- Implementers
Constructors
Properties
-
discardedFrames
→ Stream<
({int bytes, int streamId})> -
The bytes of each frame the channel refused and stepped over, reported
per stream as they ARRIVE, never for bytes merely announced.
no setter
- hashCode → int
-
The hash code for this object.
no setterinherited
-
incoming
→ Stream<
RpcTransportMessage> -
Incoming messages from all streams, already decoded.
no setter
- isClosed → bool
-
Whether the channel has been closed.
no setter
- runtimeType → Type
-
A representation of the runtime type of the object.
no setterinherited
- supportsZeroCopy → bool
-
Whether the channel supports zero-copy message passing.
no setter
Methods
-
close(
) → Future< void> - Close the channel and release resources.
-
closeFor(
RpcChannelCloseReason reason) → Future< void> -
Closes the channel because the peer broke a rule, telling the peer why
where the channel underneath can; see
IRpcChannel.closeFor. -
noSuchMethod(
Invocation invocation) → dynamic -
Invoked when a nonexistent method or property is accessed.
inherited
-
send(
RpcTransportMessage message) → Future< void> - Send a message to the remote side.
-
toString(
) → String -
A string representation of this object.
inherited
Operators
-
operator ==(
Object other) → bool -
The equality operator.
inherited