Red de Respuestas Legales - Derecho empresarial - El canal es originalmente una cola circular

El canal es originalmente una cola circular

Una característica muy importante de golang es el canal, que a menudo se usa junto con goroutine.

Por supuesto, también implica almacenamiento en búfer y no almacenamiento en búfer. Por qué sucede esto, lo explicaremos a continuación.

La estructura de datos del canal no es demasiado complicada. Es una cola circular que almacena la longitud qcount, la capacidad dataqsiz, los datos buf y los índices frontal y posterior sendx y recvx.

Cerrado se utiliza para identificar el estado del canal. 0 significa que no está cerrado y no 0 significa que está cerrado. Si está cerrado, no se pueden enviar datos.

Hay dos funciones make internamente, una es makechan64 y la otra es makechan. De hecho, makechan64 se llama esencialmente makechan.

Puede pasar el tamaño de longitud durante la inicialización y luego calcular si hay espacio disponible en función del tamaño de tipo elem.size de sus datos inicializados.

Llegado a este punto, asigna valores a los campos restantes de la estructura.

Es ch