私は、そのインターフェイスの1つからAPIを公開しているCOM EXEアウトオブプロセスサーバーを持っています。 このAPIの機能はURLを投稿することです。COMサーバーにジョブキューが必要ですか?
クライアントはCOMサーバーのインスタンスを作成し、このAPIを新しいURLで呼び出します。
クライアントがURLを送信する必要があるたびに、このCOMサーバーのインスタンスが作成されます。
クライアントが投稿したすべてのURLを追跡し、何も失われていないことを確認するために、COMサーバーにキューを実装する必要がありますか?
私はCOMオブジェクトを作成するたびに新しいプロセスが起動するのではないかと疑問に思っていますか? その場合、私はサーバーにジョブキューを実装する必要はないと思います。
しかし、メモリに1つのインスタンスしか残っていない場合、クライアントによって送信されたジョブ/ URLが失われる可能性があります。
私のCOMサーバーはシングルスレッドです。だから私はCOMサーバーに複数の要求を置くことができますか?私はまた、COMサーバーが要求を出してすぐに戻るようにしたい。 URLを投稿するためにCOMサーバーに2番目のスレッドを実装する必要があるようです。 – anand
コンポーネントがSTAの場合、複数の要求を送信できますが、要求が実行されると、後続のすべての要求は、最初の要求が返されるまで静かに中断され、その後、保留中の要求の1つが再開されます。これは、共有変数の破損を防ぐためにCOMによって自動的に行われます。内部に必要なスレッドの量を任意に増やすことができますが、同期を考慮する必要があります。 – sharptooth