Exit-Funktion in Go

GolangGolangBeginner
Jetzt üben

This tutorial is from open-source community. Access the source code

💡 Dieser Artikel wurde von AI-Assistenten übersetzt. Um die englische Version anzuzeigen, können Sie hier klicken

Einführung

Das Exit-Labor ist dazu gedacht, Ihre Fähigkeit zu testen, die os.Exit-Funktion in Go zu verwenden, um mit einem bestimmten Status sofort zu beenden.


Skills Graph

%%%%{init: {'theme':'neutral'}}%%%% flowchart RL go(("Golang")) -.-> go/NetworkingGroup(["Networking"]) go/NetworkingGroup -.-> go/exit("Exit") subgraph Lab Skills go/exit -.-> lab-15474{{"Exit-Funktion in Go"}} end

Exit

Das Problem, das in diesem Labor gelöst werden soll, ist es, ein Go-Programm mit einem bestimmten Statuscode zu beenden, indem die os.Exit-Funktion verwendet wird.

Um dieses Labor abzuschließen, sollten Sie über ein grundlegendes Verständnis von Go-Programmierung und dem os-Paket verfügen.

## Wenn Sie `exit.go` mit `go run` ausführen, wird die Beendung
## von `go` erkannt und ausgegeben.
$ go run exit.go
exit status 3

## Indem Sie ein Binärprogramm erstellen und ausführen, können Sie
## den Status im Terminal sehen.
$ go build exit.go
$./exit
$ echo $?
3

## Beachten Sie, dass das `!` aus unserem Programm nie ausgegeben wurde.

Hier ist der vollständige Code:

// Verwenden Sie `os.Exit`, um sofort mit einem bestimmten
// Status zu beenden.

package main

import (
	"fmt"
	"os"
)

func main() {

	// `defer`-Anweisungen werden bei Verwendung von `os.Exit` _nicht_
	// ausgeführt, daher wird diese `fmt.Println`-Anweisung nie aufgerufen.
	defer fmt.Println("!")

	// Beenden Sie mit Status 3.
	os.Exit(3)
}

// Beachten Sie, dass im Gegensatz zu z.B. C Go nicht einen ganzzahligen
// Rückgabewert von `main` verwendet, um den Beendungsstatus anzugeben. Wenn
// Sie mit einem nicht-null-Status beenden möchten, sollten Sie `os.Exit` verwenden.

Zusammenfassung

In diesem Labor haben Sie gelernt, wie Sie die os.Exit-Funktion verwenden, um ein Go-Programm sofort mit einem bestimmten Statuscode zu beenden. Denken Sie daran, dass im Gegensatz zu anderen Programmiersprachen Go keinen ganzzahligen Rückgabewert von main verwendet, um den Beendungsstatus anzugeben.