我正在编写一个 vb.net .net 4.0 应用程序,但在获取计时器时遇到问题。 有人可以帮我告诉我我做错了什么吗?
我已经对主应用程序进行了大量故障排除,以至于我决定尝试让它在新项目中工作,但似乎无法让它工作。
谢谢!
Module Module1
Public Timer As New System.Timers.Timer
Sub Main()
AddHandler Timer.Elapsed, AddressOf Timer_Tick
Timer.AutoReset = True
Timer.Interval = 1000
Timer.Start()
Console.WriteLine("Timer Started")
End Sub
Sub Timer_Tick(source As Object, e As EventArgs)
Console.WriteLine("TimerTick")
End Sub
End Module
您需要确保Main()
继续运行,否则您的进程将立即终止。
您可以使用Console.ReadLine()
(如果您有控制台(或Thread.Sleep(Timeout.Infinite)
。
我不知道为什么你的代码不起作用。但是您可以使用函数循环来执行相同的工作。
Module Module1
Sub Main()
Console.WriteLine("Timer Started")
Timer_start()
End Sub
Function Timer_start()
Timer_Tick()
Threading.Thread.Sleep(1000)
End Function
Function Timer_Tick()
Console.WriteLine("TimerTick")
Timer_start()
End Function
End Module
Sub Main
Timer.Interval = 60000 ' one minute
Timer.Enabled
' do stuff
Do until (Some condition, like a stop flag to stop looping and end program)
System.Threading.Thread.Sleep(10000)
Loop
End
Timer_Elapsed(sender As Object, e As Timers.ElapsedEventArgs) Handles Timer.Elapsed
Timer.enabled = False
' do stuff
Timer.Enabled = True
End Sub