diff --git a/miner/worker.go b/miner/worker.go index 748950bbba..a749eb0488 100644 --- a/miner/worker.go +++ b/miner/worker.go @@ -1337,13 +1337,16 @@ LOOP: // when in-turn, compare with remote work. from := bestWork.coinbase if w.bidFetcher != nil && bestWork.header.Difficulty.Cmp(diffInTurn) == 0 { - waitBidTimer := time.NewTimer(w.config.DelayLeftOver / 5) + waitBidTimer := time.NewTimer(50 * time.Millisecond) + checkBidTicker := time.NewTicker(5 * time.Millisecond) + defer waitBidTimer.Stop() + defer checkBidTicker.Stop() LOOP_WAIT_BID: for { select { case <-waitBidTimer.C: break LOOP_WAIT_BID - default: + case <-checkBidTicker.C: if w.bidFetcher.GetSimulatingBid(bestWork.header.ParentHash) == nil { break LOOP_WAIT_BID }