タイトル : 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) |