这种类型的优化是否有一个名称?



我在一个大型代码库上工作,在分析时,大部分时间都花在锁争用和映射查找上。该系统是一个实时系统,由来自传入数据流的回调驱动。许多线程得到回调。(许多消费者)。

回调函数通常使用字符串(键)调用,然后从回调调用许多函数。这些函数本身调用很多函数。

这些函数中的许多函数或这些函数的子函数都进行查找,通常每次查找相同的字符串。(最初传递给回调函数的字符串)

明显的优化是做一次查找,然后将找到的内容作为参数传递到调用链中。但问题是,这将涉及改变大量的代码和函数签名。

所以一个解决方案是在回调函数保存查找值在全局结构映射威胁到查找值。threaddid是int类型,并且线程数小于100,所以查找线程id比查找字符串要快。

这个技术有名字吗?它就像在调用链的顶部被清除的线程缓存。

我想你是在考虑记忆。从维基百科:

在计算中,记忆是一种优化技术,主要用于通过存储昂贵的函数调用的结果,并在再次出现相同的输入时返回缓存的结果来提高计算机程序的速度。

最新更新