Junior — Middle
Афзалати истифодаи гуруротинҳо дар муқоиса бо нӯгҳо (threads) чист?
sobes.tech AI
Ҷавоб аз AI
Горутинлар — бу Goда юзлаб йўловчи йўллар бўлиб, уларни ишга тушириш Go ишга тушириш муҳити томонидан бошқарилади, операцион тизим томонидан эмас. Уларнинг анъанавий йўлларга нисбатан афзалликлари:
- Кичикроқ хотира сарфланиши: Горутинлар бир неча килобайт хотира олишади, йўллар — мегабайтлар.
- Тез яратиш ва ўтказиш: Горутинларни ишга тушириш ва ўтказиш жуда тез.
- Мослаштиришнинг соддалиги: Go хавфсиз маълумот алмашиш учун каналлар беради, бу ҳамкорликда дастурлашни осонлаштиради.
- Масштабланиш: Минглаб ёки миллионлаб горутинларни бир вақтнинг ўзида ишга тушириш мумкин.
Горутин яратиш мисоли:
func sayHello() {
fmt.Println("Горутиндан салом")
}
func main() {
go sayHello() // горутинни ишга туширамиз
time.Sleep(time.Second) // горутиннинг бажарилишини кутамиз
}