Sobes.tech
Senior

რა არის გორუტინა? რატომ უწოდებენ მას მსუბუქს? რა არის გორუტინას საწყისი მეხსიერების ზომა და რა არის მაქსიმალური?

sobes.tech AI

პასუხი AI-სგან

Goroutine — bu Go tilida yengil ijro oqimi bo‘lib, u ishga tushirish vaqti darajasida amalga oshiriladi va operatsion tizim bilan emas, balki ishga tushirish muhitida bajariladi. Bu funksiyalarni parallel ravishda minimal qo‘shimcha xarajatlar bilan bajarishga imkon beradi.

Uni yengil deb atashadi, chunki tizim iplaridan farqli o‘laroq, goroutine-lar juda kam xotira talab qiladi va tezda yaratiladi. Bu dinamik yığım boshqaruvi va Go darajasidagi rejalashtiruvchi yordamida amalga oshiriladi.

Goroutine boshlang‘ich yığım o‘lchami odatda taxminan 2 KB (eski Go versiyalarida — 4 KB), lekin yığım ehtiyojlarga qarab dinamik ravishda o‘sishi va kamayishi mumkin, maksimal daraja esa bir necha megabayt (odatda 1 GB gacha, ammo amalda bunday katta yığım kamdan-kam hollarda talab qilinadi). Bu yondashuv minglab va hatto millionlab goroutine-larni bir vaqtning o‘zida ishlatishga imkon beradi, bu esa katta xotira xarajatlarini talab qilmaydi.