Tag: 计时器

定时器线程是否等待,直到回调函数中的所有步骤都完成,或者回调函数是否在每个周期中重新调用

我有一个计时器线程function SampleTimer = new Timer(SomeTask,0,70000) 回拨function如下 void SomeTask(object o) { //block using autoresetevent } 问题是SomeTask()回调方法每70秒调用一次,即使回调方法中的所有操作仍未完成。 如何防止计时器在其中的所有步骤完成之前调用SomeTask()函数

Windows服务中线程内的计时器

我无法弄清楚如何以最好的方式解决这个问题。 现在我有一个Windows服务,其唯一任务是从具有特定DSN的数据库中收集数据,然后在数据有效时发送电子邮件。 该服务包含一个计时器,每5分钟计时一次,并执行上述任务。 现在我需要重新编写Windows服务才能在1个以上的DSN上运行。 我想在windows服务中创建几个线程,然后在每个线程内再次有一个seperat计时器。 这是一个好主意,如何做到这一点? 我想避免为每个DSN提供Windows服务。 如果我没有任何意义,我会尝试绘制它 Windows Service 线程1(DSN1)—————————–线程2(DSN2)————- ——— Thread3(DSN3) 定时器(每X分钟刻度)—————–定时器(相同)———————- —定时器(相同) 逻辑()———————————————逻辑电 – – – – – – – – – – – – – – – – 逻辑() 希望我的问题有道理:)

定时器C#。 启动,停止并获取通话之间的时间

可能重复: 如何测量函数运行多长时间? 我正在编写一个带有可靠数据传输的UDP聊天。 我需要在发送数据包时启动计时器,并在收到服务器的答复后立即停止(确认 – 确认)。 这是我的代码: private void sendButton_Click(object sender, EventArgs e) { Packet snd = new Packet(ack, textBox1.Text.Trim()); textBox1.Text = string.Empty; Smsg = snd.GetDataStream();//convert message into array of bytes to send. while (true) { try { // Here I need to Start a timer! clientSock.SendTo(Smsg, servEP); clientSock.ReceiveFrom(Rmsg, ref servEP); //Here I need to […]

返回已处理记录号的SQL Server存储过程

我有一个Winforms应用程序,它执行一个存储过程,检查几行(大约500k)。 为了告知用户已经处理了多少行,我需要一个存储过程,每n行返回一个值。 例如,每处理1000行(大多数是INSERT )。 否则我只能在处理所有行时通知。 任何提示如何解决这个问题? 我认为使用触发器或某些计划任务可能很有用,但我无法弄清楚如何实现它。

C#计时器每X秒触发一次,但与实时保持同步(即没有漂移)

C#中是否有.NET Timer可以确保事件之间没有“漂移”? 也就是说,如果您将计时器设置为每X秒关闭一次,那么在操作几天之后它就不会漂移,即确保一天中接近X秒事件的数量与它应该保持同步? 如果没有,是否有一个众所周知的代码示例将C#中的Timer函数包装起来执行此操作?

Fire timer_立即从Windows服务中的OnStart中获取

我正在使用System.Timers.Timer ,我在ac#windows服务的OnStart方法中得到了如下代码。 timer = new Timer(); timer.Elapsed += timer_Elapsed; timer.Enabled = true; timer.Interval = 3600000; timer.Start(); 这导致timer_Elapsed的代码从我启动服务后的一小时开始每小时执行一次。 有没有办法让它在我启动服务时执行,然后每小时执行一次? timer_Elapsed调用的方法运行时间太长,无法直接从OnStart调用它。

StopWatch与计时器 – 何时使用

原谅我这个问题,但我似乎无法找到何时使用哪个的好来源。 如果你能用简单的术语解释它会很高兴。 而且,我正面临着这样的困境: 看,我正在编写一个简单的应用程序。 我希望它显示经过的时间(hh:mm:ss格式或其他)。 而且,能够“加速”或“减慢”其时间间隔(即加速以使实时的一分钟等于应用程序中的一小时)。 例如,在Youtubevideo中( *我们不考虑我们可以跳转到vid的特定部分* ),我们会看到在屏幕左下角观看该video所花费的实际时间,但是通过导航选项菜单,我们可以加速或缩小video。 我们实际上可以看到时间以与速度因子一致的方式更新(例如,如果您选择速度的两倍,下面的计时器比正常速度快两倍更新),您可以随时更改此速度速率。 这就是我所追求的。 Youtubevideo如何衡量经过的时间以及它们可以改变时间间隔的事实。 那么,你认为我应该选择哪两个? 定时器还是秒表? 顺便说一下,我只是在编写一个Windows窗体应用程序。 我正在模拟某些东西,我希望用户能够在他或她希望的时候加速。 虽然这很简单,但我希望采用适当的方法。

unit testing基于计时器的应用?

我目前正在C#中编写一个简单的,基于计时器的迷你应用程序,每隔k秒执行n次动作。 我正在尝试采用测试驱动的开发风格,因此我的目标是对应用程序的所有部分进行unit testing。 所以,我的问题是:有没有一种好的方法来对基于计时器的类进行unit testing? 正如我所看到的那样,问题在于,测试执行时需要花费很大的时间,因为他们必须等待很长时间才能完成所需的操作。 特别是如果想要实际数据(秒),而不是使用框架允许的最小时间分辨率(1毫秒?)。 我正在使用模拟对象来执行操作,以记录操作被调用的次数,以便操作几乎没有时间。

如何制作一个wpf倒数计时器?

我想创建wpf倒数计时器,将结果显示为hh:mm:ss到文本框中,我会感谢任何人的帮助。

C#Timer与服务中的线程

我有一个服务,每10秒就会访问一个数据库并获取数据(如果有的话)。 问题是处理这些数据最多可能需要30秒。 如果我使用10秒间隔的定时器,服务将获得两次相同的数据。 我想要实现的效果(仅用于可视化): while(true) { if(Getnrofrows() > 0) do stuff else sleep for 10 sec } Ppl说Thread.Sleep在生产服务中是个坏主意,我该怎么做定时器呢? /麦克风