Sobes.tech
Junior — Middle

Hogyan lehet különálló folyamatot kijelölni és indítani a Go nyelvben?

sobes.tech MI

Válasz az MI-től

Go nyelvben a külön folyamat (az operációs rendszer értelemben) indításához az os/exec csomagot használjuk. Ezzel létrehozhatunk és indíthatunk egy új folyamatot, például külső parancs vagy program futtatására.

Példa az ls -la parancs futtatására:

package main

import (
    "fmt"
    "os/exec"
)

func main() {
    cmd := exec.Command("ls", "-la")
    output, err := cmd.CombinedOutput()
    if err != nil {
        fmt.Println("Hiba:", err)
        return
    }
    fmt.Println(string(output))
}

Ha a programon belüli párhuzamos kód végrehajtásáról van szó, akkor Go-ban goroutine-okat (go func() { ... }()) használunk. De a goroutine nem külön folyamat, hanem egy könnyű szál egy folyamaton belül.

Ezért, a külön folyamat lefoglalásához és indításához, az os/exec-et kell használni.