Go Channels: Difference between revisions

From NovaOrdis Knowledge Base
Jump to navigation Jump to search
Line 8: Line 8:
The Go <code>chan</code>s provide a composable, concurrent-safer way to communicate between concurrent processes.
The Go <code>chan</code>s provide a composable, concurrent-safer way to communicate between concurrent processes.


Because channels are composable with other channels, this makes writing large systems simpler, because you can coordinate the input from multiple subsystems by easily composing the output together. You can combine input channels with timeouts, cancellations, or message to other subsystems.
Because channels are composable with other channels, this makes writing large systems simpler, because you can coordinate the input from multiple subsystems by easily composing the output together. You can combine input channels with [[#Timeout|timeouts]], [[#Cancellation|cancellations]], or message to other subsystems.


=Channel Patterns=
=Channel Patterns=

Revision as of 23:13, 15 January 2024

External

Internal

TODO

Deplete Go_Channels into this.

Overview

The Go chans provide a composable, concurrent-safer way to communicate between concurrent processes.

Because channels are composable with other channels, this makes writing large systems simpler, because you can coordinate the input from multiple subsystems by easily composing the output together. You can combine input channels with timeouts, cancellations, or message to other subsystems.

Channel Patterns

Pipelines

Timeout

Cancellation