7

CreateThread APIメソッドを使用する場合、LPVOID lpParameterが渡される複数のパラメーターを渡したい場合はどうすればよいですか?

4

2 に答える 2

8

関連するすべてのデータを保持する構造体を作成し、その構造体のインスタンス (適切なパラメーターで満たされた) へのポインターを渡すことができます。CreateThread()

LPVOIDスレッド作成関数では、構造体へのポインターにキャストして使用する必要があります。

于 2012-05-15T11:52:44.973 に答える
6

これらの引数をヒープに割り当てられた構造体に入れ、LPVOIDパラメーターで構造体のアドレスを渡します。スレッド関数は、LPVOID構造体へのポインターにキャストして、パラメーターを読み取ることができます。

CreateThread呼び出すスレッドのスタックに配置すると、スレッド プロシージャがアクセスしようとするまでに無効になる可能性があるため、ヒープに配置することが不可欠です。

于 2012-05-15T11:52:53.980 に答える