miner: moved gasprice to non-method

This commit is contained in:
obscuren 2015-05-09 12:13:46 +02:00
parent 13ddf20bd2
commit a7705fc203

View File

@ -247,13 +247,6 @@ func (w *worker) setGasPrice(p *big.Int) {
w.gasPrice = p w.gasPrice = p
} }
func (w *worker) gasprice(pct int64) *big.Int {
p := new(big.Int).Set(w.gasPrice)
p.Div(p, big.NewInt(100))
p.Mul(p, big.NewInt(pct))
return p
}
func (self *worker) commitNewWork() { func (self *worker) commitNewWork() {
self.mu.Lock() self.mu.Lock()
defer self.mu.Unlock() defer self.mu.Unlock()
@ -274,8 +267,9 @@ func (self *worker) commitNewWork() {
ignoredTransactors = set.New() ignoredTransactors = set.New()
) )
var pct int64 = 90 const pct = int64(90)
minprice := self.gasprice(pct) // calculate the minimal gas price the miner accepts when sorting out transactions.
minprice := gasprice(self.gasPrice, pct)
for _, tx := range transactions { for _, tx := range transactions {
// We can skip err. It has already been validated in the tx pool // We can skip err. It has already been validated in the tx pool
from, _ := tx.From() from, _ := tx.From()
@ -411,3 +405,12 @@ func (self *worker) HashRate() int64 {
return tot return tot
} }
// gasprice calculates a reduced gas price based on the pct
// XXX Use big.Rat?
func gasprice(price *big.Int, pct int64) *big.Int {
p := new(big.Int).Set(price)
p.Div(p, big.NewInt(100))
p.Mul(p, big.NewInt(pct))
return p
}