Junior — Middle
¿Cómo se puede destacar y lanzar un proceso separado en el lenguaje Go?
sobes.tech AI
Respuesta de la IA
En Go, para iniciar un proceso separado (en el sentido del sistema operativo), se utiliza el paquete os/exec. Con él, se puede crear y lanzar un nuevo proceso, por ejemplo, ejecutar un comando externo o un programa.
Ejemplo de ejecución del comando ls -la:
package main
import (
"fmt"
"os/exec"
)
func main() {
cmd := exec.Command("ls", "-la")
output, err := cmd.CombinedOutput()
if err != nil {
fmt.Println("Error:", err)
return
}
fmt.Println(string(output))
}
Si se trata de la ejecución paralela de código dentro del programa, en Go se utilizan las goroutines (go func() { ... }()). Pero una goroutine no es un proceso separado, sino un hilo ligero dentro de un proceso.
Por lo tanto, para reservar y lanzar un proceso separado, se debe usar os/exec.