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