core, p2p/discv5: use time.NewTicker instead of time.Tick (#15747)

release/1.8
ferhat elmas 7 years ago committed by Felix Lange
parent c495bca4ad
commit 5866626b08
  1. 5
      core/blockchain.go
  2. 6
      p2p/discv5/database.go

@ -1196,10 +1196,11 @@ func (bc *BlockChain) PostChainEvents(events []interface{}, logs []*types.Log) {
}
func (bc *BlockChain) update() {
futureTimer := time.Tick(5 * time.Second)
futureTimer := time.NewTicker(5 * time.Second)
defer futureTimer.Stop()
for {
select {
case <-futureTimer:
case <-futureTimer.C:
bc.procFutureBlocks()
case <-bc.quit:
return

@ -239,14 +239,14 @@ func (db *nodeDB) ensureExpirer() {
// expirer should be started in a go routine, and is responsible for looping ad
// infinitum and dropping stale data from the database.
func (db *nodeDB) expirer() {
tick := time.Tick(nodeDBCleanupCycle)
tick := time.NewTicker(nodeDBCleanupCycle)
defer tick.Stop()
for {
select {
case <-tick:
case <-tick.C:
if err := db.expireNodes(); err != nil {
log.Error(fmt.Sprintf("Failed to expire nodedb items: %v", err))
}
case <-db.quit:
return
}

Loading…
Cancel
Save