"fmt"
"os"
"strings"
+ "sync/atomic"
"github.com/bytom/api"
"github.com/bytom/blockchain/txbuilder"
}
// Sendbulktx send asset tx
-func Sendbulktx(threadTxNum int, txBtmNum string, sendAcct string, sendasset string, controlPrograms []string, txidChan chan string) {
+func Sendbulktx(threadTxNum int, txBtmNum string, sendAcct string, sendasset string, controlPrograms []string, txidChan chan string, index *uint64) {
arrayLen := len(controlPrograms)
for i := 0; i < threadTxNum; i++ {
//build tx
txidChan <- ""
continue
}
+
+ atomic.AddUint64(index, 1)
+ fmt.Println("tx num:", atomic.LoadUint64(index), " txid:", resp)
type txID struct {
Txid string `json:"tx_id"`
}
txBtm := fmt.Sprintf("%d", assetNum)
fmt.Println("*****************send tx start*****************")
// send btm to account
+ index := uint64(0)
for i := 0; i < thdNum; i++ {
- go Sendbulktx(thdTxNum, txBtm, sendAcct, sendasset, controlPrograms, txidChan)
+ go Sendbulktx(thdTxNum, txBtm, sendAcct, sendasset, controlPrograms, txidChan, &index)
}
txs := list.New()
"github.com/bytom/api"
"github.com/bytom/blockchain/rpc"
"github.com/bytom/env"
+ jww "github.com/spf13/jwalterweatherman"
)
const (
client := MustRPCClient()
client.Call(context.Background(), path, request, response)
-
switch response.Status {
case api.FAIL:
return nil, ErrRemote
case "":
+ jww.ERROR.Println("Unable to connect to the bytomd")
return nil, ErrConnect
}