API 関数の使用に問題がありますQueueUserAPC
。基本的に、作成WaitForSingleObject
したEvent
オブジェクトを使用してループするだけの新しいスレッドを作成しました。このスレッドを、非同期で処理する必要があるランダムな関数呼び出しを割り当てることができる「孤独な」ワーカー スレッドにしたかったのです。
ただし、スレッドを作成すると、スレッドが作成された直後だけがQueueUserAPC
機能します。say, の直後に挿入し、Sleep の後に配置すると、前に(すぐに)実行しても機能しますが、関数は実行されません。Sleep(2000);
CreateThread
QueueUserAPC
Sleep
スレッドに別のハンドルを使用してみました。イベント オブジェクトをリセットしてみました。QueueUserAPC
動作しない場合の戻り値を確認しました (1 に等しく、MSDN ではゼロ以外の結果は操作の成功であると述べています)。
私はこれについて何をすべきかよくわかりません。どんな提案でも大歓迎です。
ありがとう!
JR