1

C ++でスレッド化する方法がわかりません。それを知りたくないだけでなく、スレッドを別のコアに強制する方法はありますか?また、ユーザーが持っているコアの数をどのように知ることができますか?

4

1 に答える 1

4

スレッドを任意の CPU にバインドすることをアフィニティの設定と呼びます。プラットフォームに依存する操作です。

Windows の場合: SetProcessAffinityMask

pthread の場合:pthread_attr_setaffinity_np(3)およびpthread_setaffinity_np(3)

Boost の場合native_handle()、プラットフォーム固有のスレッド ハンドルを取得して、上記の関数で使用できます。

于 2012-09-03T04:09:57.937 に答える