паники
This commit is contained in:
parent
7dabb31483
commit
381b1303da
@ -1,7 +1,8 @@
|
|||||||
// A `panic` typically means something went unexpectedly
|
// `Panic` обычно означает, что что-то неожиданно пошло
|
||||||
// wrong. Mostly we use it to fail fast on errors that
|
// не так. В основном мы используем его для быстрого
|
||||||
// shouldn't occur during normal operation, or that we
|
// отказа при ошибках, которые не должны возникать во
|
||||||
// aren't prepared to handle gracefully.
|
// время нормальной работы, или которые мы не готовы
|
||||||
|
// обрабатывать.
|
||||||
|
|
||||||
package main
|
package main
|
||||||
|
|
||||||
@ -9,15 +10,17 @@ import "os"
|
|||||||
|
|
||||||
func main() {
|
func main() {
|
||||||
|
|
||||||
// We'll use panic throughout this site to check for
|
// Мы будем использовать panic на этом сайте, чтобы
|
||||||
// unexpected errors. This is the only program on the
|
// проверять наличие неожиданных ошибок. Это
|
||||||
// site designed to panic.
|
// единственная программа на сайте, предназначенная
|
||||||
|
// для паники.
|
||||||
panic("a problem")
|
panic("a problem")
|
||||||
|
|
||||||
// A common use of panic is to abort if a function
|
// Обычное использование panic - это прерывание,
|
||||||
// returns an error value that we don't know how to
|
// если функция возвращает значение ошибки, которое
|
||||||
// (or want to) handle. Here's an example of
|
// мы не знаем, как (или хотим) обрабатывать. Вот
|
||||||
// `panic`king if we get an unexpected error when creating a new file.
|
// пример `panic`, если мы получаем неожиданную ошибку
|
||||||
|
// при создании нового файла.
|
||||||
_, err := os.Create("/tmp/file")
|
_, err := os.Create("/tmp/file")
|
||||||
if err != nil {
|
if err != nil {
|
||||||
panic(err)
|
panic(err)
|
||||||
|
@ -1,6 +1,6 @@
|
|||||||
# Running this program will cause it to panic, print
|
# Запуск этой программы вызовет панику, распечатает
|
||||||
# an error message and goroutine traces, and exit with
|
# сообщение об ошибке и трейс выполнения и завершит
|
||||||
# a non-zero status.
|
# работу с ненулевым статусом.
|
||||||
$ go run panic.go
|
$ go run panic.go
|
||||||
panic: a problem
|
panic: a problem
|
||||||
|
|
||||||
@ -10,6 +10,7 @@ main.main()
|
|||||||
...
|
...
|
||||||
exit status 2
|
exit status 2
|
||||||
|
|
||||||
# Note that unlike some languages which use exceptions
|
# Обратите внимание, что в отличие от некоторых языков,
|
||||||
# for handling of many errors, in Go it is idiomatic
|
# которые используют исключения для обработки
|
||||||
# to use error-indicating return values wherever possible.
|
# ошибок, в Go привычно использовать возвращающие значения,
|
||||||
|
# указывающие на ошибки.
|
Loading…
x
Reference in New Issue
Block a user