Junior — Middle
Bir programda yeni bir goroutine nasıl başlatılır ve çalıştırılır?
sobes.tech yapay zeka
AI'dan gelen yanıt
Go dilinde yeni bir goroutine, go anahtar kelimesi kullanılarak oluşturulur ve ardından bir fonksiyon veya metod çağrılır. Bu, ana programla paralel çalışan hafif bir yürütme akışı oluşturur.
Goroutine’in başlatılması ve çalıştırılması şu şekilde yapılır:
- Fonksiyon öncesinde
goçağrılır:go myFunction(). - Go zamanlayıcısı yeni bir goroutine oluşturur ve yürütme sırasına ekler.
- Goroutine, ana programdan bağımsız olarak asenkron şekilde çalışmaya başlar.
Örnek:
func sayHello() {
fmt.Println("Goroutine'den merhaba")
}
func main() {
go sayHello() // goroutine başlatılır
fmt.Println("Main'den merhaba")
time.Sleep(time.Second) // goroutine’nin tamamlanması için zaman tanır
}
Önemli olan, goroutinelerin işletim sistemi thread’lerine kıyasla çok hafif olması ve planlamanın ve geçişlerin Go çalışma zamanı tarafından yönetilmesidir, bu da kaynakların verimli kullanılmasını sağlar.