好像localtime_s()
(與標準localtime_r
相同)在MSVC中包含關鍵部分。在Windows上使用localtime_s()的多線程性能不佳的解決方法
爲了進行比較,下面是2個示例應用程序,其中一個是localtime_s
,其他gmtime_s
。
剖析顯示內部isindst
重鎖爭從common_localtime_s<__int64>
稱爲:
gmtime
不會出現問題:
有什麼辦法來解決此線程環境中得到理智localtime_s
性能,提供確實需要本地時間在我的過程嗎?
實際上你是否經常調用這個函數,以至於它是一個瓶頸? –
是的,它目前佔用了所有運行時間(64個CPU)的70%。 – rustyx
是的,我看到了同樣的問題。多線程環境下localtime_s速度較慢。我無法找到解決方案。 – SergeyA