Мы используем файлы cookie
Мы используем файлы cookie для улучшения работы сайта и предоставления вам персонализированного опыта. Правила использования файлов cookie можно найти в нашей политике конфиденциальности
Дедлок (тупик) — это ситуация, когда две или более горутины блокируются, ожидая друг друга, и ни одна из них не может продолжить выполнение. Чаще всего возникает при работе с мьютексами или каналами.
Примеры дедлока:
Блокировка мьютексов в разном порядке:
go
Goroutine1 захватила mu1
и ждет mu2
. Goroutine2 захватила mu2
и ждет mu1
. Обе горутины заблокированы.
Отправка в небуферизованный канал без получателя:
go
Дедлок (тупик) — это ситуация, когда две или более горутины блокируются, ожидая друг друга, и ни одна из них не может продолжить выполнение. Чаще всего возникает при работе с мьютексами или каналами.
Примеры дедлока:
Блокировка мьютексов в разном порядке:
go
Goroutine1 захватила mu1
и ждет mu2
. Goroutine2 захватила mu2
и ждет mu1
. Обе горутины заблокированы.
Отправка в небуферизованный канал без получателя:
go
Зарегистрируйтесь или войдите, чтобы получить доступ к полным ответам на все вопросы из банка вопросов.