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