Junior — Middle
Go tilida qanday qilib alohida jarayonni ajratib chiqarish va ishga tushirish mumkin?
sobes.tech AI
AIdan javob
Go tilida, alohida jarayonni (operatsion tizim ma'nosida) ishga tushirish uchun os/exec paketi ishlatiladi. Bu yordamida yangi jarayon yaratish va ishga tushirish mumkin, masalan, tashqi buyruq yoki dastur bajarish.
ls -la buyruqini ishga tushirish misoli:
package main
import (
"fmt"
"os/exec"
)
func main() {
cmd := exec.Command("ls", "-la")
output, err := cmd.CombinedOutput()
if err != nil {
fmt.Println("Xato:", err)
return
}
fmt.Println(string(output))
}
Agar kodning parallel bajarilishi haqida bo‘lsa, Go’da bu uchun goroutinlar (go func() { ... }()) ishlatiladi. Ammo goroutine alohida jarayon emas, balki bir jarayon ichidagi yengil oqim.
Shuning uchun, alohida jarayonni ajratish va ishga tushirish uchun os/exec ishlatiladi.