私はASP.NETのページにタイマーを持っています。Timer.Tickイベントのローカル静的変数(タイマーの停止)
一定の時間が経過すると、タイマーを無効にします。
タイマーのティックイベントに静的変数を設定して、経過秒数を記録したいとします。
私の質問は、これは動作しますか?
ユーザXとYが両方ともページを表示している場合は、両方ともローカル静的変数が別にありますか?
一定の時間が経過した後、ASP.NETタイマーをシャットダウンする最良の方法は何ですか?
私はASP.NETのページにタイマーを持っています。Timer.Tickイベントのローカル静的変数(タイマーの停止)
一定の時間が経過すると、タイマーを無効にします。
タイマーのティックイベントに静的変数を設定して、経過秒数を記録したいとします。
私の質問は、これは動作しますか?
ユーザXとYが両方ともページを表示している場合は、両方ともローカル静的変数が別にありますか?
一定の時間が経過した後、ASP.NETタイマーをシャットダウンする最良の方法は何ですか?
いいえ、動作しません。 VB.NetのStatic
は、クラスレベルで隠し共有変数をスレッドセーフな方法で隠す構文的な砂糖です。共有クラスの変数は、のすべてのユーザーが一度にそのページののユーザーと共有しているので、これはまったくうまくいかないでしょう。
代わりに、datetimeフィールドをセッションに格納して確認してください。また、タイマー自体がクライアント上で実行されていることに注意してください(あなたがajaxタイマーコントロールを使用していると仮定して)。したがって、それを無効にする唯一の方法は、Tickイベントが発生したときなどのサーバーイベント中です。