- - PR -
timerの扱いについてお聞きしたいのですが・・・・
1
投稿者 | 投稿内容 | ||||||||
---|---|---|---|---|---|---|---|---|---|
|
投稿日時: 2008-10-04 14:18
即出だったらすいません。
今現在あるアプリケーションを作っていてその中でtimerを使ってプログラムの流れを制御しているのですが、どうしても終了させるさいにtimerが正常に終了してないようでものすごく悩んでいます。 どなたかtimerをtimer.Stop()の方法以外で強制的に終了させる方法をご存知のかたはぜひご教授ください。 よろしくお願いします。 | ||||||||
|
投稿日時: 2008-10-04 14:34
.NET には Timer がいくつかありますが、「どの」タイマーを使っているんでしょうか?
| ||||||||
|
投稿日時: 2008-10-04 15:05
すいません、それを書くのを忘れていました。
自分が使っている開発環境はC#です。 よろしくお願いします。 | ||||||||
|
投稿日時: 2008-10-04 15:48
言語もそうですが、
System.Windows.Forms.Timer System.Threading.Time System.Timers.Timer の内のどれでしょう?あるいはその他?って話じゃないかなと思います。 上記ののタイマーについてはこちらが参考になるかと。 http://www.atmarkit.co.jp/fdotnet/dotnettips/372formstimer/formstimer.html | ||||||||
|
投稿日時: 2008-10-04 15:58
たびたびすいません、タイマーはSystem.Windows.Forms.Timerの使っています。
| ||||||||
|
投稿日時: 2008-10-04 16:05
Windows.FormsのTimerなら特に意識するべきことはないので、 > どうしても終了させるさいにtimerが正常に終了してないようで というのはどのように判断されたのかが気になります。 どんなコードを書いていて、どんな現象が起きているのかを説明された方が よいと思います。 | ||||||||
|
投稿日時: 2008-10-04 17:40
外してたら恥ずかしいのですが、こんな処理かなと想像して。。
フォーム上にボタンとタイマーコントロールを置いて、こんな感じのことをしたのかなと仮定しちゃいます。
1.処理Aが終了し、かつ処理Bが始まる前のタイミングでボタンを押して、Timer1.stopする。 2.結果、処理Bが行われてるじゃん!(本当は行われてほしくない。) 3.しかし、再びタイマーにて処理ABが行われることはない。 この結果は自分としては正常ではないかと。その上で、簡単にやるならばこんな感じでしょうか。
もっと良いやり方があるかもしれないですが、今の状況で自分の言える範囲ではこんな感じです。 ※追記 すみません、、VBでソースを作ってしまいましたorz [ メッセージ編集済み 編集者: とーちゃん 編集日時 2008-10-04 17:45 ] | ||||||||
|
投稿日時: 2008-10-06 00:44
コードとかも載せたほうがいいんですか以後気を付けます。
最終的に問題点はとーちゃんさんのアドバイスのおかげで解決することができました。 数少ない情報の中コードをくんでくださってありがとうございます。 そしてみなさんご教授ありがとうございました。 |
1