mirror of
https://github.com/ethereum/go-ethereum.git
synced 2026-07-23 05:06:43 +00:00
Refactor updateFilterMapsHeads to Use Timer Instead of time.After
This commit is contained in:
parent
5c6ba6b400
commit
22deabb725
1 changed files with 7 additions and 1 deletions
|
|
@ -502,14 +502,20 @@ func (s *Ethereum) updateFilterMapsHeads() {
|
|||
}
|
||||
setHead(s.blockchain.CurrentBlock())
|
||||
|
||||
timer := time.NewTimer(time.Second * 10)
|
||||
defer timer.Stop()
|
||||
|
||||
for {
|
||||
select {
|
||||
case ev := <-headEventCh:
|
||||
setHead(ev.Header)
|
||||
timer.Reset(time.Second * 10)
|
||||
case blockProc := <-blockProcCh:
|
||||
s.filterMaps.SetBlockProcessing(blockProc)
|
||||
case <-time.After(time.Second * 10):
|
||||
timer.Reset(time.Second * 10)
|
||||
case <-timer.C:
|
||||
setHead(s.blockchain.CurrentBlock())
|
||||
timer.Reset(time.Second * 10)
|
||||
case ch := <-s.closeFilterMaps:
|
||||
close(ch)
|
||||
return
|
||||
|
|
|
|||
Loading…
Reference in a new issue