tagCANDY CGI VBレスキュー(花ちゃん) の Visual Basic 2010 用 掲示板(VB.NET 掲示板)
VBレスキュー(花ちゃん) の Visual Basic 2010 用 掲示板(VB.NET 掲示板)
[ツリー表示へ]  [ワード検索]  [Home]

タイトル Re: timeSetEventでタイマー処理
投稿日: 2017/05/31(Wed) 17:13
投稿者魔界の仮面弁士
> 既存のtimerは分解能も精度も悪いので、timeSetEventで書いてみました。

timer といってもいろいろありますが、それは本題では無いのでさておき:

System.Windows.Forms.Timer
System.Windows.Threading.DispatcherTimer
System.Threading.Timer
System.Timers.Timer


そもそも、何のために高精度なタイマーを必要としているのでしょうか。
http://www.atmarkit.co.jp/bbs/phpBB/viewtopic.php?topic=27114&forum=7



> 立ち上がり時がうまくいっていません。

そういうものです。

timeBeginPeriod および timeEndPeriod による分解能の変更は即時には行われません。
変更されるまでに幾許かの時間を要します(変更に必要な時間は一定ではありません)。

また、この設定はシステム全体に影響を与えるため、他のアプリケーションでも
分解能が変更されていた場合、その中の最高精度の値が採用されます。



> Call timeBeginPeriod(1)
> Call timeEndPeriod(50)

timeBeginPeriod と timeEndPeriod の引数には、同じ値を指定してください。



これは OK
 timeBeginPeriod(50)
 DoWork1()      '分解能50
 timeBeginPeriod(1)
 DoWork2()      '分解能1
 timeEndPeriod(1)
 DoWork3()      '分解能50
 timeEndPeriod(50)



これは OK
 timeBeginPeriod(18)
 DoWork1()      '分解能18
 timeEndPeriod(18)
 DoWork2()      '元の分解能
 timeBeginPeriod(18)
 DoWork3()      '分解能18
 timeEndPeriod(18)


これは NG … 同じ分解能でのネストはできません
 timeBeginPeriod(18)
 DoWork1()
 timeBeginPeriod(18)
 DoWork2()
 timeEndPeriod(18)
 DoWork3()
 timeEndPeriod(18)

- 関連一覧ツリー をクリックするとツリー全体を一括表示します)

古いスレッドにレスはつけられません。