草庐IT

c# - 定时器在待机模式下会发生什么?

按照目前的情况,这个问题不适合我们的问答形式。我们希望答案得到事实、引用或专业知识的支持,但这个问题可能会引发辩论、争论、投票或扩展讨论。如果您觉得这个问题可以改进并可能重新打开,visitthehelpcenter指导。关闭9年前。我正在使用Timers命名空间中的Timer。当PC进入休眠或休眠状态时,计时器会发生什么变化?我将定时器设置为延迟6小时。在那些情况下会发生什么。1)计时器从0小时开始,并立即进入休眠/休眠状态。然后PC在5点唤醒。我的计时器会在接下来的1小时或接下来的6小时后启动吗?2)计时器从0小时开始,并立即进入休眠/休眠状态。然后PC在7点醒来。我的计时器会在P

c# - 从其他线程调用主线程中的方法

我正在尝试在C#应用程序中同时运行3个级别的计时器例如:T1将在应用程序的开头运行,然后在其Tick事件上,T2将启动然后在T2的tick事件上,T3将启动。最后,在T3的tick事件上,应该在应用程序的主线程中做一些事情我的问题似乎是主线程中的代码在被其他线程调用时不工作如何让主线程通过其他线程的调用来运行它的功能? 最佳答案 问题很可能是您的主线程需要调用。如果您要在调试器中运行您的程序,您应该看到跨线程操作异常,但在运行时此异常检查被禁用。如果你的主线程是一个表单,你可以用这个简短的代码来处理它:if(InvokeRequir

c# - 如何防止 System.Timers.Timer 在线程池上排队执行?

标准System.Timers.Timer行为存在问题。计时器以一定间隔引发Elapsed事件。但是当Elapsed事件处理程序中的执行时间超过计时器间隔时,线程池开始排队处理事件。这是我的问题。这是因为我使用Elapsed事件处理程序从数据库中获取一些数据并对其进行处理,最后将结果保存回数据库。但是数据处理应该只提供一次。那么,有没有一种方法可以防止对System.Timers.Timer的经过事件进行排队。作为此问题的说明,您可以考虑下一个测试程序:publicclassEntryPoint{privatestaticvoidTimeProc(objectstate,Elapsed

c# - DispatcherTimer 应用间隔并立即执行

基本上,当我们应用某个时间间隔(即5秒)时,我们必须等待它。是否可以应用间隔并立即执行计时器而不等待5秒?(我指的是间隔时间)。有什么线索吗?谢谢!!publicpartialclassMainWindow:Window{DispatcherTimertimer=newDispatcherTimer();publicMainWindow(){InitializeComponent();timer.Tick+=newEventHandler(timer_Tick);this.Loaded+=newRoutedEventHandler(MainWindow_Loaded);}voidtim

c# - 使用 HTTPWebRequest 检查响应时间?

我正在尝试找出我的一些代理的性能。我在.net中尝试了Ping类,但它不接受端口。有没有办法检查httpwebrequest的响应需要多长时间? 最佳答案 HttpWebRequestrequest=(HttpWebRequest)WebRequest.Create(myUri);System.Diagnostics.Stopwatchtimer=newStopwatch();timer.Start();HttpWebResponseresponse=(HttpWebResponse)request.GetResponse();re

c# - 如何使用线程或计时器从 WPF 客户端应用程序定期执行方法

很难说出这里要问什么。这个问题模棱两可、含糊不清、不完整、过于宽泛或夸夸其谈,无法以目前的形式得到合理的回答。如需帮助澄清此问题以便重新打开,visitthehelpcenter.关闭9年前。我正在开发一个WPF客户端应用程序。这个应用程序定期向webservice发送数据。当用户登录到应用程序时,我希望每5mts运行一次特定方法以将数据发送到.asmx服务。我的问题是我是否需要使用线程或计时器。此方法的执行应该在用户与应用程序交互时发生。即在此方法执行期间不阻塞UI有什么资源可以找吗?

c# - 在 WPF 中使用计时器刷新 UI(使用 BackgroundWorker?)

我们在WPF中有一个应用程序,它通过ObservableCollection显示数据。5分钟后,我想刷新数据。我想我可以为它的Elapsed事件使用System.Timers.Timer对象,然后调用BackgroundWorker来调用开始工作。该方法在ViewModel类上。但是线程好像有问题。所以我尝试使用Dispatcher,但还是一样。这是我的(简化且未优化的)代码://////Initializesanewinstanceoftheclass.///publicApplicationController(){CreateDefaultTabs();Timertimer=ne

c# - 当系统处于休眠状态时,Windows 服务中的计时器如何运行?

假设我有一个Windows服务,它有一个设置为每6小时运行一次的计时器,我希望它每天触发4次。假设:0000、0600、12001800。(军用时间,同00:00等...)如果系统在1000进入休眠状态,并在1700唤醒,会发生什么?它会在1900再次触发吗,因为它的计时器还有2小时?它会立即触发(因为它错过了1200的约会),然后在2300再次触发(在当前时间上加上6小时?)我注意到当计算机进入休眠状态时,它不会触发OnPause或OnContinue方法。如果有人能阐明上述情况下系统的行为,那就太好了。干杯,并提前致谢。 最佳答案

c# - MIDI 音序器以微秒分辨率触发事件

有没有办法以几微秒的分辨率在C#中触发事件?我正在构建一个MIDI音序器,它需要在每个MIDI滴答声中触发一个事件,然后播放当时注册的任何音符。在每分钟120拍和120ppqn(每拍/四分音符脉冲数)分辨率下,该事件应每4.16666毫秒触发一次。现代音序器具有更高的分辨率,例如768ppqn,这要求该事件每651微秒触发一次。我发现的短时间事件的最佳分辨率是1毫秒。我怎样才能超越它?这个问题一定已经被任何C#MIDI音序器或MIDI文件播放器解决了。也许我只是没有从正确的角度看待问题。感谢您的帮助。 最佳答案 大多数MIDI音序器

C# 计时器在它们的间隔时间之前被触发

我们在从Windows服务使用System.Threading.Timer(.NET2.0)时遇到以下问题。大约有12种不同的计时器对象..每个计时器都有到期时间和间隔。这是正确设置的。据观察,在3到4小时后,计时器在它们的间隔结束之前开始发出信号。例如,如果计时器应该在4:59:59发出信号,它会在4:59:52发出信号,即提前7秒。谁能告诉我这种行为的原因是什么以及解决方案是什么?谢谢,斯瓦特语 最佳答案 好问题...原因如下:对于计算机来说,“计时”是一件棘手的事情……您永远不能依赖“间隔”来做到完美。有些计算机只会每14到1