Documentation ¶
Overview ¶
Package miner implements Ethereum block creation and mining.
Index ¶
- type Agent
- type Backend
- type CpuAgent
- type Miner
- func (m *Miner) GasPrice() *big.Int
- func (self *Miner) HashRate() (tot int64)
- func (self *Miner) Mining() bool
- func (self *Miner) Pending() (*types.Block, *state.StateDB)
- func (self *Miner) Register(agent Agent)
- func (self *Miner) SetEtherbase(addr common.Address)
- func (self *Miner) SetExtra(extra []byte) error
- func (m *Miner) SetGasPrice(price *big.Int)
- func (self *Miner) Start(coinbase common.Address, threads int)
- func (self *Miner) Stop()
- func (self *Miner) Unregister(agent Agent)
- type RemoteAgent
- func (a *RemoteAgent) GetHashRate() (tot int64)
- func (a *RemoteAgent) GetWork() ([3]string, error)
- func (a *RemoteAgent) SetReturnCh(returnCh chan<- *Result)
- func (a *RemoteAgent) Start()
- func (a *RemoteAgent) Stop()
- func (a *RemoteAgent) SubmitHashrate(id common.Hash, rate uint64)
- func (a *RemoteAgent) SubmitWork(nonce uint64, mixDigest, hash common.Hash) bool
- func (a *RemoteAgent) Work() chan<- *Work
- type Result
- type Work
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type Agent ¶ added in v0.8.4
type Agent interface { Work() chan<- *Work SetReturnCh(chan<- *Result) Stop() Start() GetHashRate() int64 }
Agent can register themself with the worker
type Backend ¶ added in v1.5.0
type Backend interface { AccountManager() *accounts.Manager BlockChain() *core.BlockChain TxPool() *core.TxPool ChainDb() ethdb.Database }
Backend wraps all methods required for mining.
type CpuAgent ¶ added in v0.9.20
type CpuAgent struct {
// contains filtered or unexported fields
}
func (*CpuAgent) GetHashRate ¶ added in v0.9.20
func (*CpuAgent) SetReturnCh ¶ added in v0.9.20
type Miner ¶
type Miner struct {
// contains filtered or unexported fields
}
Miner creates blocks and searches for proof-of-work values.
func (*Miner) Pending ¶ added in v1.4.0
Pending returns the currently pending block and associated state.
func (*Miner) SetEtherbase ¶ added in v0.9.36
func (*Miner) SetGasPrice ¶ added in v0.9.18
func (*Miner) Unregister ¶ added in v1.3.1
type RemoteAgent ¶ added in v0.9.17
type RemoteAgent struct {
// contains filtered or unexported fields
}
func NewRemoteAgent ¶ added in v0.9.17
func NewRemoteAgent() *RemoteAgent
func (*RemoteAgent) GetHashRate ¶ added in v0.9.17
func (a *RemoteAgent) GetHashRate() (tot int64)
GetHashRate returns the accumulated hashrate of all identifier combined
func (*RemoteAgent) GetWork ¶ added in v0.9.17
func (a *RemoteAgent) GetWork() ([3]string, error)
func (*RemoteAgent) SetReturnCh ¶ added in v0.9.17
func (a *RemoteAgent) SetReturnCh(returnCh chan<- *Result)
func (*RemoteAgent) Start ¶ added in v0.9.17
func (a *RemoteAgent) Start()
func (*RemoteAgent) Stop ¶ added in v0.9.17
func (a *RemoteAgent) Stop()
func (*RemoteAgent) SubmitHashrate ¶ added in v1.1.0
func (a *RemoteAgent) SubmitHashrate(id common.Hash, rate uint64)
func (*RemoteAgent) SubmitWork ¶ added in v0.9.17
func (a *RemoteAgent) SubmitWork(nonce uint64, mixDigest, hash common.Hash) bool
Returns true or false, but does not indicate if the PoW was correct
func (*RemoteAgent) Work ¶ added in v0.9.17
func (a *RemoteAgent) Work() chan<- *Work
Click to show internal directories.
Click to hide internal directories.