Module generic_channel

Module generic_channel 

Source
Expand description

Enum wrappers to be able to select different channel implementations at runtime.

Modules§

callback 🔒
Generic Callbacks
generic_channelset 🔒
oneshot 🔒

Structs§

GenericCallback
A mechanism to run a callback in the process this callback was constructed in.
GenericOneshotReceiver
The oneshot receiver struct
GenericOneshotSender
The oneshot sender struct
GenericReceiver
GenericReceiverSet
A GenericReceiverSet. Allows you to wait on multiple GenericReceivers. Automatically selects either Ipc or crossbeam depending on multiprocess mode.
GenericReceiverVisitor 🔒
GenericSender
A GenericSender that sends messages to a GenericReceiver.
GenericSenderVisitor 🔒
GenericSharedMemory
We want to discourage anybody from using the ipc_channel crate in servo and use ‘GenericChannels’ instead. ‘GenericSharedMemory’ is, however, still useful so we reexport it under a different name for future optimization. Shared memory descriptor that will be made accessible to the receiver of an IPC message that contains the discriptor.

Enums§

GenericReceiverVariants 🔒
GenericSelectionResult
Result for readable events returned from GenericReceiverSet::select.
GenericSenderVariants 🔒
The actual GenericSender variant.
ReceiveError
SendError
TryReceiveError

Traits§

GenericSend
Abstraction of the ability to send a particular type of message cross-process. This can be used to ease the use of GenericSender sub-fields.

Functions§

channel
Creates a Servo channel that can select different channel implementations based on multiprocess mode or not. If the scenario doesn’t require message to pass process boundary, a simple crossbeam channel is preferred.
new_generic_channel_crossbeam 🔒
Private helper function to create a crossbeam based channel.
new_generic_channel_ipc 🔒
oneshot
Creates a oneshot generic channel. This channel allows only a fixed capacity and might have other optimizations. The send and receive methods will consume the Sender/Receiver. We will automatically select ipc or crossbeam channels.
serialize_generic_sender_variants 🔒
to_receive_result

Type Aliases§

ReceiveResult
RoutedReceiver
RoutedReceiverReceiveResult
SendResult
TryReceiveResult