Junior — Middle
Môžeš vymenovať hlavné vlastnosti a parametre komunikačných kanálov?
sobes.tech AI
Odpoveď od AI
V jazyku Go sú kanály prostriedkom na prenos dát medzi gorutinami, zabezpečujúc synchronizáciu a komunikáciu. Hlavné vlastnosti a parametre kanálov:
- Typ dát: kanál prenáša hodnoty určitého typu, napríklad
chan intpre celé čísla. - Bufferovanie: kanály môžu byť s alebo bez bufferu. Bez bufferu blokuje odosielateľa, kým príjemca ne prečíta hodnotu. S bufferom má kapacitu, čo umožňuje odosielanie viacerých hodnôt bez blokovania.
- Smer: kanál môže byť obojstranný (
chan T), alebo jednostranný — iba na odosielanie (chan<- T) alebo iba na prijímanie (<-chan T).
Príklad vytvorenia bufferovaného kanála:
ch := make(chan int, 5) // kanál s bufferom na 5 prvkov