こんにちは、winapi の QueueUserAPC を使用して、別のスレッドで apc 関数呼び出しを呼び出しています。私の質問は、パラメーターを渡すためのベストプラクティスは何ですか。オブジェクトの有効期間と割り当て/割り当て解除の責任について言及しています。
DWORD WINAPI QueueUserAPC(PAPCFUNC pfnAPC, HANDLE hThread, ULONG_PTR dwData);
私は dwData を使用してパラメーターを渡し、ポインターをデータに渡しますが、それをどのように処理すればよいか疑問に思っていました。受信スレッドがそれを使い終わるまで、それが生きていることを確認する必要があります。スマート ポインターを使用して、使用されなくなったデータの割り当てを解除する必要がありますか?
私は、呼び出し元のスレッドとdeallocでの割り当てを推測します。受信は可能ですが、おそらくそれほど良いことではありません。
他にできることはありますか?受信スレッドがデータで完了したことを通知するためだけに、2つの間の同期を避けたいと思います...
ありがとう!