Junior — Middle
Go dilinde nasıl ayrı bir süreç seçilir ve başlatılır?
sobes.tech yapay zeka
AI'dan gelen yanıt
Go dilinde, ayrı bir süreç (işletim sistemi anlamında) başlatmak için os/exec paketi kullanılır. Bu paket sayesinde yeni bir süreç oluşturabilir ve başlatabilirsiniz, örneğin dış bir komut veya program çalıştırmak.
ls -la komutunun çalıştırılması örneği:
package main
import (
"fmt"
"os/exec"
)
func main() {
cmd := exec.Command("ls", "-la")
output, err := cmd.CombinedOutput()
if err != nil {
fmt.Println("Hata:", err)
return
}
fmt.Println(string(output))
}
Eğer program içindeki kodun paralel yürütülmesi söz konusuysa, Go'da bu amaçla goroutine'ler (go func() { ... }()) kullanılır. Ancak, goroutine ayrı bir süreç değil, bir hafif iş parçacığıdır.
Bu nedenle, ayrı bir süreç ayırmak ve başlatmak için os/exec kullanılmalıdır.