我正在尝试使计时器的间隔小于1毫秒。
我的尝试:
Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click
Timer1.Interval = 0000001
Timer1.Start()
End Sub
Private Sub Timer1_Tick(sender As Object, e As EventArgs) Handles Timer1.Tick
ProgressBar1.Increment(+1)
If ProgressBar1.Value = 100 Then
Timer1.Stop()
ProgressBar1.Value = 0
MessageBox.Show("Done, 1 Ms")
End If
End Sub
当我使用“ 0000001”间隔时,间隔值返回“ 1”。
我的主要目的是使计时器以纳秒为单位运行,以使标签文本(+1)的添加速度快于1毫秒。我知道它将每1秒增加(+1000),但是我需要使其快于1毫秒。
那么,计时器是否可能比1ms快?
答案 0 :(得分:0)
不幸的是,这是不可能的。有关此问题的更多阅读,请参见this msdn post。 StopWatch
对象可以准确地用于测量,但是Timer
不会出现滴答事件。
答案 1 :(得分:0)
好吧,我认为这是不可能的,但是如果您只想加快事件的传递速度,您可以尝试在一个时间间隔内多次调用相同的函数。由于多种原因,这不会是准确的,但它确实会渗透。另一个问题可能是,如果您计划调用函数 100 秒或 1000 秒或次数,事件可能会与下一个滴答声重叠。这取决于 CPU 强度。这可能是也可能不是缺点。您可以添加一个 Timer.Stop();
和一个 Timer.Start();
,但这会限制您可以拥有的最大速度,并且您的准确性也会更加下降。