10 個のスレッド + タスク リストを作成するスレッドを作成する Windows サービスがあります。
これらの 11 のスレッドはそれぞれ、CoInitialize(nil) を呼び出すことによって STA に入ります。
- タスク リストは 1 つのスレッドによって作成され、他のスレッドはアイテムを取得し、処理して解放します ....
a) 他のスレッドは、他のスレッドによって作成されたオブジェクトを使用できますか? (それはうまくいくようですが..) b)他のスレッドは、他のスレッドによって割り当てられたメモリを解放できますか?(それはうまくいかないようです...)
どうにかしてスレッド間でポインターをマーシャリングする必要がありますか? または、少なくともアイテムを取得して処理する必要がありますが、それを作成したスレッドの「所有者」として解放する必要がありますか?
- 私のWindowsサービスでは、サービスを開始/停止するために使用できる機能を作成しました(スレッドの一時停止と再開)。
ただし、実際にデータを収集して間隔で実行するスレッドに問題があります。スレッドが処理する項目をロードすると、その後 5 分間スリープ状態になります。そのようなスレッドを安全に終了するにはどうすればよいですか? スリープ状態を中止するには?
よろしくお願いします。