Junior — Middle
Чӣ гуна оғоз ва иҷрои gorutinaи нав дар барнома анҷом дода мешавад?
sobes.tech AI
Ҷавоб аз AI
Дар забони Go, як goroutine навсозӣ мешавад бо калиди калид go, ки пас аз он фармони ё усули даъват карда мешавад. Ин як ҷараёни иҷрои сабукро месозад, ки дар параллел бо барномаи асосӣ кор мекунад.
Инициализатсия ва оғоз кардани goroutine чунин аст:
goпеш аз функсия даъват мешавад:go myFunction().- Планировщики Go як goroutine нав месозад ва онро ба навбат барои иҷро мегузорад.
- Goroutine оғоз мекунад, ки ба таври асинхронӣ кор кунад, мустақил аз барномаи асосӣ.
Масалан:
func sayHello() {
fmt.Println("Салом аз goroutine")
}
func main() {
go sayHello() // оғоз кардани goroutine
fmt.Println("Салом аз main")
time.Sleep(time.Second) // вақт медиҳем, ки goroutine иҷро шавад
}
Муҳим аст, ки дар ёд дошта бошем, ки goroutine-ҳо хеле сабуканд дар муқоиса бо сӯрохиҳои системаи оператсионӣ, ва нақшакашӣ ва ивазкунии онҳо аз ҷониби runtime-и Go идора карда мешавад, ки истифодаи самараноки захираҳоро имкон медиҳад.