共用方式為


多執行緒程式庫效能

單一執行緒 CRT 已不再提供使用。 本文討論如何從多執行緒程式庫取得最大效能。

將效能最大化

多執行緒程式庫的效能已經受到改善,並非常接近已被取代之單一執行緒程式庫的效能。 針對那些需要更高效能的情況,現已提供數種新功能。

  • 獨立串流鎖定可讓您鎖定資料流程,然後使用 _nolock 直接存取資料流程的函式 。 這項功能可讓鎖定使用方式在關鍵迴圈外懸掛。

  • 每個執行緒地區設定可降低多執行緒案例的地區設定存取成本(請參閱 _configthreadlocale )。

  • 地區設定相依函式(名稱以_l結尾)採用地區設定作為參數,移除大量成本(例如、 printf_printf_lwprintf_wprintf_l )。

  • 針對常用字碼頁的最佳化,可降低許多簡短作業的成本。

  • _CRT_DISABLE_PERFCRIT_LOCKS定義會強制所有 I/O 作業假設單一執行緒 I/O 模型,並使用 _nolock 函式的形式。 此宏可讓高度 I/O 型的單一線程應用程式獲得更佳的效能。

  • 公開 CRT 堆積控制代碼可讓您針對 CRT 堆積啟用 Windows 低分散堆積 (LFH),這可以大幅提升高度調整案例的效能。

另請參閱

C 執行時間 (CRT) 和 C++ 標準程式庫 (STL) .lib 檔案