mirror of
https://github.com/ethereum/go-ethereum.git
synced 2026-07-21 20:26:41 +00:00
Merge 52e032e3b6 into c9b6d268b4
This commit is contained in:
commit
b1516bcd7b
2 changed files with 27 additions and 0 deletions
|
|
@ -63,3 +63,19 @@ func (self *Miner) Stop() {
|
||||||
func (self *Miner) HashRate() int64 {
|
func (self *Miner) HashRate() int64 {
|
||||||
return self.worker.HashRate()
|
return self.worker.HashRate()
|
||||||
}
|
}
|
||||||
|
|
||||||
|
func (self *Miner) AddThreads(minerThreads int) int {
|
||||||
|
if minerThreads > 0 {
|
||||||
|
|
||||||
|
for i := len(self.worker.agents); i < minerThreads+i; i++ {
|
||||||
|
self.worker.register(NewCpuMiner(i, self.pow))
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
return len(self.worker.agents)
|
||||||
|
}
|
||||||
|
|
||||||
|
func (self *Miner) RemoveThreads(num int) int {
|
||||||
|
self.worker.unregister(num)
|
||||||
|
return len(self.worker.agents)
|
||||||
|
}
|
||||||
|
|
|
||||||
|
|
@ -115,6 +115,17 @@ func (self *worker) register(agent Agent) {
|
||||||
agent.SetWorkCh(self.recv)
|
agent.SetWorkCh(self.recv)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
func (self *worker) unregister(numremove int) {
|
||||||
|
totagents := len(self.agents)
|
||||||
|
if totagents == 0 || numremove < 1 {
|
||||||
|
return
|
||||||
|
}
|
||||||
|
if numremove > totagents {
|
||||||
|
numremove = totagents
|
||||||
|
}
|
||||||
|
self.agents = self.agents[0 : totagents-numremove]
|
||||||
|
}
|
||||||
|
|
||||||
func (self *worker) update() {
|
func (self *worker) update() {
|
||||||
events := self.mux.Subscribe(core.ChainHeadEvent{}, core.NewMinedBlockEvent{})
|
events := self.mux.Subscribe(core.ChainHeadEvent{}, core.NewMinedBlockEvent{})
|
||||||
|
|
||||||
|
|
|
||||||
Loading…
Reference in a new issue