Albirew/nyaa-pantsu
Archivé
1
0
Bifurcation 0
Ce dépôt a été archivé le 2022-05-07. Vous pouvez voir ses fichiers ou le cloner, mais pas ouvrir de ticket ou de demandes d'ajout, ni soumettre de changements.
nyaa-pantsu/util/signals/closers.go

27 lignes
389 o
Go
Brut Vue normale Historique

package signals
import (
"io"
"sync"
)
var (
closeAccess sync.Mutex
closers []io.Closer
)
// RegisterCloser adds an io.Closer to close on interrupt
func RegisterCloser(c io.Closer) {
closeAccess.Lock()
closers = append(closers, c)
closeAccess.Unlock()
}
func closeClosers() {
closeAccess.Lock()
for idx := range closers {
closers[idx].Close()
}
closeAccess.Unlock()
}