mirror of
https://github.com/seaweedfs/seaweedfs.git
synced 2024-01-19 02:48:24 +00:00
avoid data race on grace.hooks (#3572)
https://github.com/seaweedfs/seaweedfs/issues/3564
This commit is contained in:
parent
8c3040db81
commit
c37d6fc01a
|
@ -12,7 +12,7 @@ import (
|
||||||
|
|
||||||
var signalChan chan os.Signal
|
var signalChan chan os.Signal
|
||||||
var hooks = make([]func(), 0)
|
var hooks = make([]func(), 0)
|
||||||
var hookLock sync.Mutex
|
var hookLock sync.RWMutex
|
||||||
|
|
||||||
func init() {
|
func init() {
|
||||||
signalChan = make(chan os.Signal, 1)
|
signalChan = make(chan os.Signal, 1)
|
||||||
|
@ -27,7 +27,9 @@ func init() {
|
||||||
// syscall.SIGQUIT,
|
// syscall.SIGQUIT,
|
||||||
)
|
)
|
||||||
go func() {
|
go func() {
|
||||||
for _ = range signalChan {
|
hookLock.RLock()
|
||||||
|
defer hookLock.RUnlock()
|
||||||
|
for range signalChan {
|
||||||
for _, hook := range hooks {
|
for _, hook := range hooks {
|
||||||
hook()
|
hook()
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in a new issue