Jak rozwidlić proces

Potrzebuję pomocy w zrozumieniu, jak demonizować proces w Go.

<code>package main

import (
   "fmt"
   "os"
)

func start() {
   var procAttr os.ProcAttr 
   procAttr.Files = []*os.File{nil, nil, nil}
   _, err := os.StartProcess("/Path/prog", nil, &procAttr)
   if err != nil {
       fmt.Printf("%v", err)
   }
}


func main () {
   start()
} 
</code>

Jeśli uruchomisz ten kod w linii poleceń, program zwróci kontrolę, ale nadal jest połączony z cmd. Zamknięcie cmd zamyka program.

Jak mogę oddzielić go od cmd? Dodawanie:

<code>procAttr.Sys.HideWindow = true
</code>

Powoduje ten błąd: „panika” na zły wskaźnik pamięci

questionAnswers(3)

yourAnswerToTheQuestion