diff options
author | obscuren <geffobscura@gmail.com> | 2015-03-10 08:22:38 +0800 |
---|---|---|
committer | obscuren <geffobscura@gmail.com> | 2015-03-10 08:22:38 +0800 |
commit | 0db4a0e898d09ffa7b6b1289e9a334edc0001cfa (patch) | |
tree | a0b5c8381ab482550ef4800a06d4db086d76a983 /miner/agent.go | |
parent | 94e543bc398efbb5c712b6e4cb48d8a57eb3400d (diff) | |
parent | 0d64163fea3a266ceb71cb4c4ee5682052c9ca6c (diff) | |
download | dexon-0db4a0e898d09ffa7b6b1289e9a334edc0001cfa.tar dexon-0db4a0e898d09ffa7b6b1289e9a334edc0001cfa.tar.gz dexon-0db4a0e898d09ffa7b6b1289e9a334edc0001cfa.tar.bz2 dexon-0db4a0e898d09ffa7b6b1289e9a334edc0001cfa.tar.lz dexon-0db4a0e898d09ffa7b6b1289e9a334edc0001cfa.tar.xz dexon-0db4a0e898d09ffa7b6b1289e9a334edc0001cfa.tar.zst dexon-0db4a0e898d09ffa7b6b1289e9a334edc0001cfa.zip |
Merge branch 'poc-9' into develop
Diffstat (limited to 'miner/agent.go')
-rw-r--r-- | miner/agent.go | 13 |
1 files changed, 9 insertions, 4 deletions
diff --git a/miner/agent.go b/miner/agent.go index 9046f5d5a..6865d5a08 100644 --- a/miner/agent.go +++ b/miner/agent.go @@ -42,11 +42,16 @@ func (self *CpuMiner) Start() { } func (self *CpuMiner) update() { + justStarted := true out: for { select { case block := <-self.c: - self.quitCurrentOp <- struct{}{} + if justStarted { + justStarted = true + } else { + self.quitCurrentOp <- struct{}{} + } go self.mine(block) case <-self.quit: @@ -69,8 +74,8 @@ done: func (self *CpuMiner) mine(block *types.Block) { minerlogger.Infof("(re)started agent[%d]. mining...\n", self.index) - nonce := self.pow.Search(block, self.quitCurrentOp) - if nonce != nil { - self.returnCh <- Work{block.Number().Uint64(), nonce} + nonce, mixDigest, seedHash := self.pow.Search(block, self.quitCurrentOp) + if nonce != 0 { + self.returnCh <- Work{block.Number().Uint64(), nonce, mixDigest, seedHash} } } |