0

Webページから起動した後、Webページを閉じてもサーバー上で実行されるサーバー側スレッドを作成することは可能ですか? 停止する必要がある場合は、ページを再度開き、そのスレッドが実行されている場合、ボタンに停止が表示されます。

たとえば、ウェブページに 1 つのボタンがあります。クリックすると、新しいスレッドが開始され、Web ページを閉じても、現在の日付と時刻が指定されたファイルに書き込まれます。

4

1 に答える 1

1

リクエストによってスレッドを作成することができ、そのリクエストが処理された後も実行を継続します。そのスレッドへの参照を静的変数に格納して、次のリクエストがスレッドが存在することを認識し、それを中止できるようにすることもできます。

ただし、これは堅牢なアプリケーション設計ではありません。IISは、要求数、メモリ使用量、アプリケーションの実行時間などのさまざまな要因に基づいて、いつでもアプリケーションプールをリサイクルできます。これが発生すると、処理の途中でスレッドが中止される可能性があります。したがって、より良い設計は、そのようなバックグラウンド操作を処理する別個のWindowsサービスを持つことです。

于 2013-03-18T09:55:42.543 に答える