Documentation ¶
Overview ¶
Package miner implements Ethereum block creation and mining.
Index ¶
- type Agent
- type Backend
- type Miner
- func (self *Miner) HashRate() (tot int64)
- func (self *Miner) Mining() bool
- func (self *Miner) Pending() (*types.Block, *state.StateDB)
- func (self *Miner) PendingBlock() *types.Block
- func (self *Miner) Register(agent Agent)
- func (self *Miner) SetEtherbase(addr common.Address)
- func (self *Miner) SetExtra(extra []byte) error
- func (self *Miner) Start(coinbase common.Address)
- func (self *Miner) Stop()
- func (self *Miner) Unregister(agent Agent)
- type Result
- type Work
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type Agent ¶
type Agent interface { Work() chan<- *Work SetReturnCh(chan<- *Result) Stop() Start() GetHashRate() int64 }
Agent can register themself with the worker
type Backend ¶
type Backend interface { AccountManager() *accounts.Manager BlockChain() *core.BlockChain TxPool() *core.TxPool ChainDb() ethdb.Database CheckWitnessId(id string) bool GetRefAddr() (common.Address, []common.Address) }
Backend wraps all methods required for mining.
type Miner ¶
type Miner struct {
// contains filtered or unexported fields
}
Miner creates blocks and searches for proof-of-work values.
func (*Miner) PendingBlock ¶
PendingBlock returns the currently pending block.
Note, to access both the pending block and the pending state simultaneously, please use Pending(), as the pending state can change between multiple method calls
func (*Miner) SetEtherbase ¶
func (*Miner) Unregister ¶
Click to show internal directories.
Click to hide internal directories.