if ( result == update_flags::retry )
m_stat.onRemoveRetry();
- else
+ else {
+ m_stat.onExtract( result == update_flags::result_removed );
return;
+ }
}
}
}
key_comparator(),
[&pExtracted]( key_type const&, mapped_type pVal, rcu_disposer& ) -> bool { pExtracted = pVal; return false; }
);
+ m_stat.onExtract( pExtracted != nullptr );
return pExtracted;
}
cds::opt::details::make_comparator_from_less<Less>(),
[&pExtracted]( key_type const&, mapped_type pVal, rcu_disposer& ) -> bool { pExtracted = pVal; return false; }
);
+ m_stat.onExtract( pExtracted != nullptr );
return pExtracted;
}
//@endcond
if ( result == update_flags::retry )
m_stat.onRemoveRetry();
- else
+ else {
+ m_stat.onRemove( result == update_flags::result_removed );
return result == update_flags::result_removed;
+ }
}
}
return update_flags::failed;
pNode->m_pValue.store( nullptr, memory_model::memory_order_relaxed );
+ m_stat.onMakeRoutingNode();
}
--m_ItemCounter;