После (кратко) рассмотрения спецификации языка Движения, эффективного Движения и модели памяти Движения, я все еще немного неясен относительно того, как Идут работа каналов под капотом.
Какая структура они? Они действуют отчасти как ориентированная на многопотоковое исполнение очередь / массив.
Их реализация зависит от архитектуры?
Вот хороший разговор, который описывает примерно, как реализованы каналы:
https://описание Разговора о youtu.be/KBZlN0izeiY
:
GopherCon 2017: Kavya Joshi - Понимание Каналов
Каналы обеспечивает простой механизм для goroutines для передачи, и мощная конструкция для создания сложных шаблонов параллелизма. Мы будем копаться во внутренних работах каналов и операциях канала, включая то, как они поддерживаются планировщиком во время выполнения и системами управления памятью.