共用方式為


多執行緒程式庫效能

單一執行緒 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 檔案