Do not use defer, notify gTomb before closing goroutines. Explicitly.
This commit is contained in:
7
lib.go
7
lib.go
@@ -413,11 +413,10 @@ func joinMuc(room string) {
|
|||||||
// probeServerLiveness проверяет живость соединения с сервером. Для многих серверов обязательная штука, без которой
|
// probeServerLiveness проверяет живость соединения с сервером. Для многих серверов обязательная штука, без которой
|
||||||
// они выкидывают клиента через некоторое время неактивности.
|
// они выкидывают клиента через некоторое время неактивности.
|
||||||
func probeServerLiveness() { //nolint:gocognit
|
func probeServerLiveness() { //nolint:gocognit
|
||||||
defer gTomb.Done()
|
|
||||||
|
|
||||||
for {
|
for {
|
||||||
select {
|
select {
|
||||||
case <-gTomb.Dying():
|
case <-gTomb.Dying():
|
||||||
|
gTomb.Done()
|
||||||
return
|
return
|
||||||
|
|
||||||
default:
|
default:
|
||||||
@@ -525,6 +524,7 @@ func probeMUCLiveness() { //nolint:gocognit
|
|||||||
for {
|
for {
|
||||||
select {
|
select {
|
||||||
case <-gTomb.Dying():
|
case <-gTomb.Dying():
|
||||||
|
gTomb.Done()
|
||||||
return
|
return
|
||||||
|
|
||||||
default:
|
default:
|
||||||
@@ -591,11 +591,10 @@ func probeMUCLiveness() { //nolint:gocognit
|
|||||||
|
|
||||||
// RotateStatus периодически изменяет статус бота в MUC-е согласно настройкам из кофига.
|
// RotateStatus периодически изменяет статус бота в MUC-е согласно настройкам из кофига.
|
||||||
func RotateStatus(room string) {
|
func RotateStatus(room string) {
|
||||||
defer gTomb.Done()
|
|
||||||
|
|
||||||
for {
|
for {
|
||||||
select {
|
select {
|
||||||
case <-gTomb.Dying():
|
case <-gTomb.Dying():
|
||||||
|
gTomb.Done()
|
||||||
return
|
return
|
||||||
|
|
||||||
default:
|
default:
|
||||||
|
|||||||
Reference in New Issue
Block a user