MCPcopy Create free account
hub / github.com/bitcoin/bitcoin / LimitMemoryUsage

Method LimitMemoryUsage

src/kernel/disconnected_transactions.cpp:31–42  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

29}
30
31std::vector<CTransactionRef> DisconnectedBlockTransactions::LimitMemoryUsage()
32{
33 std::vector<CTransactionRef> evicted;
34
35 while (!queuedTx.empty() && DynamicMemoryUsage() > m_max_mem_usage) {
36 evicted.emplace_back(queuedTx.front());
37 cachedInnerUsage -= RecursiveDynamicUsage(queuedTx.front());
38 iters_by_txid.erase(queuedTx.front()->GetHash());
39 queuedTx.pop_front();
40 }
41 return evicted;
42}
43
44size_t DisconnectedBlockTransactions::DynamicMemoryUsage() const
45{

Callers

nothing calls this directly

Calls 7

RecursiveDynamicUsageFunction · 0.85
emptyMethod · 0.45
emplace_backMethod · 0.45
frontMethod · 0.45
eraseMethod · 0.45
GetHashMethod · 0.45
pop_frontMethod · 0.45

Tested by

no test coverage detected