> For the complete documentation index, see [llms.txt](https://docs.furkangulsen.com/golang-dokumani/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.furkangulsen.com/golang-dokumani/goroutines.md).

# Goroutines

`Goroutines`, Go dilinde eşzamanlı olarak çalışan işlemlerdir. Goroutines, `go` anahtar kelimesi kullanılarak oluşturulur ve farklı işlemleri eşzamanlı olarak gerçekleştirmek için kullanılır.

```go
package main

import (
	"fmt"
	"time"
)

func sayHello() {
	fmt.Println("Hello")
}

func main() {
	go sayHello() // goroutine
	time.Sleep(time.Second)
	fmt.Println("World")
}
```

Bu örnekte, `sayHello` adlı bir fonksiyon tanımlanır ve `Hello` adlı bir mesajı ekrana yazdırır.

`main` fonksiyonunda, `sayHello` fonksiyonu bir `goroutine` olarak çağrılır. Bu nedenle, `sayHello` fonksiyonunun çalışması diğer işlemlerden bağımsız olarak gerçekleşir. `time.Sleep` fonksiyonu, bir saniyelik bir bekleme süresi ekler. Son olarak, `World` adlı bir mesaj ekrana yazdırılır.

Çıktı:

```
Hello
World
```

Bu örnekte, `goroutine` kullanarak, `sayHello` fonksiyonu eşzamanlı olarak çalıştırıldı. `sayHello` fonksiyonu, `goroutine` olarak çağrıldığı için, diğer işlemlerden bağımsız olarak çalıştı ve sonuç olarak ekrana `Hello` mesajı yazdırıldıktan sonra `World` mesajı yazdırıldı.
