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.