W programie Go, jaki jest właściwy sposób ustawiania kodu zakończenia procesu?Prawidłowy sposób ustawiania kodu wyjścia?
Próbowałem zmieniając główny func do
func main() int {
return -1
}
Ale to powoduje błąd func main must have no arguments and no return values
OK więc jest os.Exit(code int)
, jednak natychmiast przerywa proces i nie wyjść czysto (bez deferreds prowadzone są na przykład).
Odkryłem także, że panic
zakończy proces i ustawi kod statusu na niezerowy, może to być najlepszy sposób, chociaż zrzuca on ślad stosu do konsoli.
Jaki jest właściwy sposób ustawienia kodu wyjścia?
Zastanawiam się również nad tym samym. Może ten wątek może pomóc: https://groups.google.com/forum/#!topic/golang-nuts/tPOFzJkkof8. Ale nie pomogło mi to zbytnio. – akonsu