0

私はWCFWebサービスを開発しました。これは、その方法の1つであり、データベースに新しいエントリを作成し、別のテーブルのエントリの状態を変更します。

私が達成したいのは、1時間経過した後にその状態変化をリセットすることです。この例を聞いて、私がやろうとしていることを理解してください。

デバイスはイベントとして報告される変更を検出できるため、デバイスはさまざまなイベントに関連付けられ、イベントは1つのデバイスにのみ関連付けられます。新しいイベントがデータベースに挿入されると、デバイスはアラート状態になるため、そのデバイスの状態列はアラートに変更されます。1時間経過すると、そのデバイスの状態列は通常に戻る必要があります。

スレッドを作成することを考えましたが、WCFを初めて使用するため、多くのリソースを消費するかどうかわからないため、ワーカーロールを使用することを考えましたが、サービスが稼働している間、スレッドも実行され続けます。せいぜい、デバイスの状態が再び変化するまでこれを処理するプロセスをスリープ状態にしたいのですが、スレッド/ワーカーの役割をスリープ状態にすることで多くのリソースが消費されるかどうかはわかりません。

多くのリソースを使用せずにこの種の動作を実現するにはどうすればよいですか?

4

1 に答える 1

1

スレッドを使用しないでください-アプリケーションをシャットダウンする必要がある場合(デプロイメント、障害など)、スレッドは失われ、その上でキューに入れられた作業も失われます。Windowsタスクスケジューラのような永続的なタイマーサービスまたはQuartz.NETのようなライブラリを使用します。

于 2013-01-22T20:53:08.200 に答える