Sobes.tech
Junior — Middle

Dasturda yangi gorutinani qanday boshlash va bajarish amalga oshiriladi?

sobes.tech AI

AIdan javob

Go tilida yangi goroutine go kalit so'zi yordamida yaratiladi, undan so'ng funksiya yoki metod chaqiriladi. Bu yengil bajarish oqimini yaratadi, u asosiy dastur bilan parallel ishlaydi.

Goroutine ni boshlash va ishga tushirish quyidagicha amalga oshiriladi:

  1. Funktsiya oldidan go chaqiriladi: go myFunction().
  2. Go jadvalchi yangi goroutine ni yaratadi va uni bajarish uchun navbatga qo'yadi.
  3. Goroutine asinxron tarzda boshlanadi, asosiy dasturdan mustaqil.

Misol:

func sayHello() {
    fmt.Println("Goroutine dan salom")
}

func main() {
    go sayHello() // goroutine ni ishga tushiramiz
    fmt.Println("Main dan salom")
    time.Sleep(time.Second) // goroutine uchun vaqt beramiz
}

Muhim: goroutine lar juda yengil bo'lib, operatsion tizim iplaridan farqli o'laroq, ularning rejalashtirilishi va kontekst almashinuvi Go runtime tomonidan boshqariladi, bu esa resurslardan samarali foydalanishni ta'minlaydi.