C# 在指定的时间间隔后调用事件
这是我的节目的细目。它是一种工具,用于测量指定端口上服务器的延迟 因此,目前我有一个手动检查,以找到特定端口上的服务器。然后我每500毫秒ping一次这个服务器,并根据这个ping更新一些GUI元素 我在后台线程中执行ping,每次ping后我都调用thread.sleep(500) 对这些事件使用计时器是否更好C# 在指定的时间间隔后调用事件,c#,multithreading,timer,C#,Multithreading,Timer,这是我的节目的细目。它是一种工具,用于测量指定端口上服务器的延迟 因此,目前我有一个手动检查,以找到特定端口上的服务器。然后我每500毫秒ping一次这个服务器,并根据这个ping更新一些GUI元素 我在后台线程中执行ping,每次ping后我都调用thread.sleep(500) 对这些事件使用计时器是否更好 我想每5秒检查一次服务器,每500毫秒ping一次。你可以使用任务调度器api并设置一次任务,在接下来的5秒后启动应用程序。尼斯托管wrraper:taskscheduler.code
我想每5秒检查一次服务器,每500毫秒ping一次。你可以使用任务调度器api并设置一次任务,在接下来的5秒后启动应用程序。尼斯托管wrraper:taskscheduler.codeplex.com当你使用睡眠时,不管你的任务需要多长时间。睡眠500毫秒,做一个5小时的任务,然后再睡觉
如果使用计时器,则必须处理任务可能与下一个计时器事件的触发重叠的可能性。这使得事情更加复杂。使用两个计时器。休眠线程是糟糕的性能。当5秒计时器执行时,禁用500毫秒计时器。执行完成后,启用它。这是最简单和最有效的方法,国际海事组织 或者,如果没有关系,不要禁用计时器。只要坚持下去,你就会好起来。“会更好吗…”定义“更好”。一般来说,以最简单、最可维护的方式完成任务是最好的方式。