Source File
ack.go
Belonging Package
github.com/gotd/td/internal/rpc
package rpc
import (
)
// NotifyAcks notifies engine about received acknowledgements.
func ( *Engine) ( []int64) {
.mux.Lock()
defer .mux.Unlock()
for , := range {
, := .ack[]
if ! {
.log.Debug("Acknowledge callback not set", zap.Int64("msg_id", ))
continue
}
close()
delete(.ack, )
}
}
func ( *Engine) ( int64) chan struct{} {
.mux.Lock()
defer .mux.Unlock()
:= .log.With(zap.Int64("ack_id", ))
if , := .ack[]; {
.Warn("Ack already registered")
return
}
.Debug("Waiting for acknowledge")
:= make(chan struct{})
.ack[] =
return
}
func ( *Engine) ( int64) {
.mux.Lock()
defer .mux.Unlock()
delete(.ack, )
}
The pages are generated with Golds v0.6.7. (GOOS=linux GOARCH=amd64) Golds is a Go 101 project developed by Tapir Liu. PR and bug reports are welcome and can be submitted to the issue list. Please follow @Go100and1 (reachable from the left QR code) to get the latest news of Golds. |