-6

C言語でマルチスレッド化する最良の方法は何ですか? CPU ホグではなく、非常に効率的なものが必要です。ありがとう。

4

3 に答える 3

3

C および Windows でこれを行う正しい (標準的な) 方法は、__beginthreadexを使用することです。

CreateThread はスレッドの C ランタイム サポートを初期化しないため、これは通常、CreateThreadを直接呼び出すよりも優先されます。そのため、CreateThread を使用してスレッドを作成し、CRT 関数を呼び出すと、問題が発生する可能性があります。

__beginthreadex は内部で CreateThread を呼び出しますが、バックグラウンドで他の作業を実行することに注意してください。

于 2008-09-04T04:28:04.300 に答える
2

UNIX ベースのプラットフォーム (Linux または Mac OS X) を使用している場合、最適なオプションはPOSIX スレッドです。これらは、POSIX 環境でマルチスレッド化するための標準的なクロスプラットフォームの方法です。これらは Windows でも使用できますが、そのプラットフォームにはおそらくより優れた (よりネイティブな) ソリューションがあります。

于 2008-09-04T02:26:07.620 に答える
0

あなたの質問は、効果的に答えるには少し一般的です。次のようなことを調べることができます。

Windows SDK の CreateThread

ブースト::スレッド

于 2008-09-04T02:39:07.807 に答える