Sobes.tech
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 int pre 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