gpt4 book ai didi

c++ - 是否预计 boost::thread_specific_ptr<>::get() 的使用会很慢?有什么解决办法吗?

转载 作者:IT老高 更新时间:2023-10-28 23:02:11 24 4
gpt4 key购买 nike

我目前正在使用 Valgrind 的“Callgrind”分析一个存在性能问题的应用程序。在查看分析数据时,似乎有 25% 的处理时间花在 boost::detail::get_tss_data 的应用程序中,其主要目的是物理模拟和可视化。

get_tss_data 显然是由 thread_specific_ptr::get

调用的

有人认为这是预期的吗?它通常是否暗示其他特定的东西?

编辑:

我的平台是:Linux-2.6.32、x86、GCC 4.4.3、libc6-2.11.1/libpthread-2.11.1

最佳答案

thread_specific_ptrpthread_setspecific/pthread_getspecific 用于 POSIX 系统,这不是最快的。

如果您使用的是 POSIX 系统,则可以使用 __thread 存储说明符。但是,它只能与常量表达式的初始化程序一起使用,例如 gcc's __thread

对于 Windows,类似的说明符是 _declspec(thread)

关于c++ - 是否预计 boost::thread_specific_ptr<>::get() 的使用会很慢?有什么解决办法吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5398987/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com