Optimize module_manager::get_module

This commit is contained in:
Igor Pissolati
2025-10-22 17:21:34 -03:00
parent 46b97fd91c
commit 83aa3b663a
3 changed files with 11 additions and 1 deletions

View File

@@ -83,9 +83,15 @@ class module_manager
callbacks* callbacks_{};
module_map modules_{};
mutable module_map::iterator last_module_cache_{modules_.end()};
module_map::iterator get_module(const uint64_t address)
{
if (last_module_cache_ != this->modules_.end() && last_module_cache_->second.contains(address))
{
return last_module_cache_;
}
if (this->modules_.empty())
{
return this->modules_.end();
@@ -101,6 +107,7 @@ class module_manager
if (upper_bound->second.contains(address))
{
last_module_cache_ = upper_bound;
return upper_bound;
}