Junior — Middle
Կարո՞ղ է ստեղծել ալիք առանց դրա չափը նշելու սկզբնական փուլում։
sobes.tech AI
Պատասխան AI-ից
Այո, Go-ում հնարավոր է ստեղծել ալիք առանց դրա չափը նշելու — դա կլինի բաֆերային չլինող ալիք։ Այդպիսի ալիք բլոկավորում է ուղարկողին մինչև ստացողը կարդա արժեքը, և հակառակը։ Օրինակ՝ բաֆերային չլինող ալիք ստեղծելու համար.
ch := make(chan int) // բաֆերային չլինող ալիք
Եթե ցանկանում եք ստեղծել բաֆերային ալիք որոշակի չափով, նշեք երկրորդ պարամետրը:
ch := make(chan int, 10) // 10 տարրով բաֆերային ալիք
Այսպիսով, ալիքի կանխադրված չափը զրո է, և այն աշխատում է որպես սինխրոնիզացիայի մեխանիզմ գորուտինների միջև։