Compare commits
1 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
7f494b3d57 |
@@ -2,7 +2,7 @@ package grawt
|
|||||||
|
|
||||||
type CloseHandler struct {
|
type CloseHandler struct {
|
||||||
waiter *Waiter
|
waiter *Waiter
|
||||||
Quit chan bool
|
Quit chan struct{}
|
||||||
active bool
|
active bool
|
||||||
autoDone bool
|
autoDone bool
|
||||||
handlerFunc *func()
|
handlerFunc *func()
|
||||||
|
|||||||
@@ -17,7 +17,7 @@ type Waiter struct {
|
|||||||
func (w *Waiter) addHandler(f *func(), autoDone bool) *CloseHandler {
|
func (w *Waiter) addHandler(f *func(), autoDone bool) *CloseHandler {
|
||||||
ch := CloseHandler{
|
ch := CloseHandler{
|
||||||
w,
|
w,
|
||||||
make(chan bool, 1),
|
make(chan struct{}, 1),
|
||||||
true,
|
true,
|
||||||
autoDone,
|
autoDone,
|
||||||
f,
|
f,
|
||||||
@@ -32,7 +32,7 @@ func (w *Waiter) terminateHandler(h *CloseHandler, forceWaitGroupDone bool) {
|
|||||||
if h.handlerFunc != nil && *h.handlerFunc != nil {
|
if h.handlerFunc != nil && *h.handlerFunc != nil {
|
||||||
(*h.handlerFunc)()
|
(*h.handlerFunc)()
|
||||||
}
|
}
|
||||||
h.Quit <- true
|
h.Quit <- struct{}{}
|
||||||
if h.autoDone || forceWaitGroupDone {
|
if h.autoDone || forceWaitGroupDone {
|
||||||
w.waitGroup.Done()
|
w.waitGroup.Done()
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user