Назад к вопросам
Junior — Middle
76
Каким образом можно выделить и запустить отдельный процесс в языке Go?
Ответ от нейросети
sobes.tech AI
В Go для запуска отдельного процесса (в смысле операционной системы) используется пакет os/exec. С его помощью можно создать и запустить новый процесс, например, выполнить внешнюю команду или программу.
Пример запуска команды ls -la:
package main
import (
"fmt"
"os/exec"
)
func main() {
cmd := exec.Command("ls", "-la")
output, err := cmd.CombinedOutput()
if err != nil {
fmt.Println("Ошибка:", err)
return
}
fmt.Println(string(output))
}
Если же речь о параллельном выполнении кода внутри программы, то в Go для этого используются горутины (go func() { ... }()). Но горутина — это не отдельный процесс, а легковесный поток внутри одного процесса.
Таким образом, для выделения и запуска отдельного процесса нужно использовать os/exec.