mirror of
https://github.com/kaspanet/kaspad.git
synced 2025-06-30 18:02:33 +00:00
Use chan struct{} for semaphores
With semaphores we don't actually care about the value passed in. It makes sense to use a 0 bytes type in these cases. There is also the added benefit of compiler optimisations for this specific use case as described here: https://docs.google.com/document/d/1yIAYmbvL3JxOKOjuCyon7JhW4cSv1wy5hC0ApeGMV9s/pub
This commit is contained in:
parent
e29f40274d
commit
73ed07bd85
@ -25,7 +25,7 @@ type txValidateItem struct {
|
|||||||
// function that is intended to be in run multiple goroutines.
|
// function that is intended to be in run multiple goroutines.
|
||||||
type txValidator struct {
|
type txValidator struct {
|
||||||
validateChan chan *txValidateItem
|
validateChan chan *txValidateItem
|
||||||
quitChan chan bool
|
quitChan chan struct{}
|
||||||
resultChan chan error
|
resultChan chan error
|
||||||
txStore TxStore
|
txStore TxStore
|
||||||
flags btcscript.ScriptFlags
|
flags btcscript.ScriptFlags
|
||||||
@ -181,7 +181,7 @@ func (v *txValidator) Validate(items []*txValidateItem) error {
|
|||||||
func newTxValidator(txStore TxStore, flags btcscript.ScriptFlags) *txValidator {
|
func newTxValidator(txStore TxStore, flags btcscript.ScriptFlags) *txValidator {
|
||||||
return &txValidator{
|
return &txValidator{
|
||||||
validateChan: make(chan *txValidateItem),
|
validateChan: make(chan *txValidateItem),
|
||||||
quitChan: make(chan bool),
|
quitChan: make(chan struct{}),
|
||||||
resultChan: make(chan error),
|
resultChan: make(chan error),
|
||||||
txStore: txStore,
|
txStore: txStore,
|
||||||
flags: flags,
|
flags: flags,
|
||||||
|
Loading…
x
Reference in New Issue
Block a user