Junior — Middle
Aké správanie sa očakáva pri volaní prázdneho operátora select v jazyku Go?
sobes.tech AI
Odpoveď od AI
V jazyku Go sa operátor select používa na prácu s viacerými kanálmi súčasne. Ak zavoláte prázdny select (t.j. bez akéhokoľvek case), vykonávanie bude navždy zablokované, pretože neexistuje žiadny kanál na čítanie alebo zápis a neexistuje default-prípad.
Príklad:
select {
// prázdny select
}
Tento kód spôsobí zablokovanie gorutiny, pretože select čaká na aspoň jeden dostupný kanál alebo default na pokračovanie.