 |
Bitcoin Core
22.99.0
P2P Digital Currency
|
Go to the documentation of this file.
28 const auto testing_setup = MakeNoLogFileContext<const TestingSetup>();
33 tx1.
vin[0].scriptWitness.stack.push_back({1});
41 tx2.
vin[0].scriptWitness.stack.push_back({2});
50 tx3.
vin[0].scriptWitness.stack.push_back({3});
57 tx4.
vin[0].prevout.SetNull();
59 tx4.
vin[0].scriptWitness.stack.push_back({4});
60 tx4.
vin[1].prevout.SetNull();
62 tx4.
vin[1].scriptWitness.stack.push_back({4});
73 tx5.
vin[0].scriptWitness.stack.push_back({4});
74 tx5.
vin[1].prevout.SetNull();
76 tx5.
vin[1].scriptWitness.stack.push_back({5});
87 tx6.
vin[0].scriptWitness.stack.push_back({4});
88 tx6.
vin[1].prevout.SetNull();
90 tx6.
vin[1].scriptWitness.stack.push_back({6});
101 tx7.
vin[0].scriptWitness.stack.push_back({5});
104 tx7.
vin[1].scriptWitness.stack.push_back({6});
123 AddTx(tx1_r, 10000LL, pool);
124 AddTx(tx2_r, 5000LL, pool);
125 AddTx(tx3_r, 20000LL, pool);
126 AddTx(tx4_r, 7000LL, pool);
127 AddTx(tx5_r, 1000LL, pool);
128 AddTx(tx6_r, 1100LL, pool);
129 AddTx(tx7_r, 9000LL, pool);
static void MempoolEviction(benchmark::Bench &bench)
CTxMemPool stores valid-according-to-the-current-best-chain transactions that may be included in the ...
void TrimToSize(size_t sizelimit, std::vector< COutPoint > *pvNoSpendsRemaining=nullptr) EXCLUSIVE_LOCKS_REQUIRED(cs)
Remove transactions from the mempool until its dynamic size is <= sizelimit.
Main entry point to nanobench's benchmarking facility.
static CTransactionRef MakeTransactionRef(Tx &&txIn)
std::shared_ptr< const CTransaction > CTransactionRef
#define NO_THREAD_SAFETY_ANALYSIS
RecursiveMutex cs
This mutex needs to be locked when accessing mapTx or other members that are guarded by it.
Bench & run(char const *benchmarkName, Op &&op)
Repeatedly calls op() based on the configuration, and performs measurements.
int64_t CAmount
Amount in satoshis (Can be negative)
Serialized script, used inside transaction inputs and outputs.
std::vector< CTxOut > vout
BENCHMARK(MempoolEviction)
#define EXCLUSIVE_LOCKS_REQUIRED(...)
size_t DynamicMemoryUsage() const
An outpoint - a combination of a transaction hash and an index n into its vout.
static void AddTx(const CTransactionRef &tx, const CAmount &nFee, CTxMemPool &pool) EXCLUSIVE_LOCKS_REQUIRED(cs_main
uint256 GetHash() const
Compute the hash of this CMutableTransaction.
static constexpr CAmount COIN
The amount of satoshis in one BTC.
A mutable version of CTransaction.
RecursiveMutex cs_main
Mutex to guard access to validation specific variables, such as reading or changing the chainstate.
int64_t GetVirtualTransactionSize(int64_t nWeight, int64_t nSigOpCost, unsigned int bytes_per_sigop)
Compute the virtual transaction size (weight reinterpreted as bytes).