выход

This commit is contained in:
badkaktus 2019-10-12 22:05:08 +03:00
parent c232a309a6
commit 91192b8a4f
3 changed files with 18 additions and 15 deletions

View File

@ -71,4 +71,4 @@ HTTP серверы (HTTP Servers)
Порождающие процессы (Spawning Processes)
Исполняющие процессы (Exec'ing Processes)
Сигналы (Signals)
Exit
Выход (Exit)

View File

@ -1,5 +1,5 @@
// Use `os.Exit` to immediately exit with a given
// status.
// Используйте `os.Exit` для немедленного выхода с
// полученныем статусом.
package main
@ -10,15 +10,17 @@ import (
func main() {
// `defer`s will _not_ be run when using `os.Exit`, so
// this `fmt.Println` will never be called.
// `defer` _не будет_ запускаться при использовании
// `os.Exit`, поэтому этот `fmt.Println` никогда не
// будет вызываться.
defer fmt.Println("!")
// Exit with status 3.
// Выход со статусом 3.
os.Exit(3)
}
// Note that unlike e.g. C, Go does not use an integer
// return value from `main` to indicate exit status. If
// you'd like to exit with a non-zero status you should
// use `os.Exit`.
// Обратите внимание, что в отличие, например, от C,
// Go не использует целочисленное возвращаемое значение
// из `main`, чтобы указать состояние выхода. Если
// вы хотите выйти с ненулевым статусом, вы должны
// использовать `os.Exit`.

View File

@ -1,13 +1,14 @@
# If you run `exit.go` using `go run`, the exit
# will be picked up by `go` and printed.
# Если вы запустите `exit.go` с помощью `go run`,
# выход будет выбран `go` и напечатан.
$ go run exit.go
exit status 3
# By building and executing a binary you can see
# the status in the terminal.
# Создавая и выполняя двоичный файл, вы можете
# увидеть статус в терминале.
$ go build exit.go
$ ./exit
$ echo $?
3
# Note that the `!` from our program never got printed.
# Обратите внимание, что `!` из нашей программы
# никогда не был напечатан.