c#延时处理或者暂停执行

author author     2023-03-24     694

关键词:

在Timer_Tick事件中需要使此事件延迟或者暂停一下,比如
private void timer1_Tick(object sender,EventArgs e)

...........; // 执行代码
delay(second); //插入延时函数
...........;// 执行代码

求解这个delay(second)要怎么编写或者说是用一种什么样的方式来实现延时功能?
thread.sleep()是不可行的,因为这个time1_tick一直存在,用sleep()函数会导致死锁。望各位不惜赐教。

给个建议,没有验证,希望对你有帮助。
在timer1_Tick这个方法的第一句话加上timer1.Enabled = false;在结束时将其设置为true。这样应该可以保证Thread.Sleep的正常执行。
并且也要看一下timer的注意事项,如果设置间隔10秒,但在tick方法当中执行操作10秒,那么执行完成后,会立刻执行下次操作。
参考技术A 没用过C#,但方法都差不多吧,你可以创建一个事件delay这个事件的信号由另一个定时器置为,但前提前面用Application.DoEvents()允许执行其他事件,并且关闭Timer1,而本函数等delay事件有信号,有信号后则执行,并释放delay事件和定时器。。。。 参考技术B 新建一个timer,在delay以后执行,然后将延时之后执行的代码交由新的timer执行。
C#的闭包特性可以在一个函数内简介地做到这一点。
Timer t1 = new Timer(10000);
//实例化Timer类,设置间隔时间为10000毫秒;
t.Elapsed += (sender, e) =>

...........; // 执行代码
Timer t2 = new Timer(delayTime);
t2.Elapsed += (sender2, e2)=>

...........;// 执行延时代码


t2.AutoReset = false; // 只执行一次
t2.Enabled = true;

t.Enabled = true;

c# 运行批处理文件以进行搅拌机导出的进程被暂停

】c#运行批处理文件以进行搅拌机导出的进程被暂停【英文标题】:c#processthatrunningabatchfileforblenderexportinggetspaused【发布时间】:2017-12-2012:04:26【问题描述】:希望有人能帮我解决这个问题。情况:我需要将一个动画从搅拌机导... 查看详情

如何让c#程序在执行中暂停一段时间

在线程中,如果要暂停一定的时间,可以使用Thread的Sleep方法,让线程暂停。在微软新的win8API中,已经用Task来实现原来用线程实现的许多功能,同样,Task也有Delay方法,让程序暂停一定的时间。以下程序利用System.Threading.Timer让... 查看详情

如何让cmd命令暂停一段时间后再自动执行

参考技术A延时10秒。需要多少秒自己改吧。。pinglocalhost-n10>nul本回答被提问者和网友采纳 参考技术Btimeout/t10 参考技术C建议用其它语言来实现,或者是下载个sleep.exe这个文件放到C:\WINDOWS目录下。用法:sleep.exe1d2h3m4s表示暂... 查看详情

python暂停几秒执行下一步、

在代码开头引入time模块:importtime在需要延时的地方加入语句:time.sleep(1)(括号中的1意为停顿1秒,想停顿时间更长可以换数字)举例:importtimeprint'11'time.sleep(10)print'22'先打印11,等待10秒后,打印22。扩展资料: ... 查看详情

quartz中misfirm处理机制

quartz中misfirm处理机制一,为什么需要misfirm处理机制?在利用quartz做任务调度时,当在多任务的情况下,我们有时候很难保证每一个任务都能在准确时间准确的执行比如:线程池中线程数量不足导致某些任务没有可用线程执行从... 查看详情

一种线程调度策略线程须要的时候执行,不须要的时候暂停

...方注冊用户的时候须要发送邮件,可是发送邮件有一定的延时,所以注冊的时候是发邮件的同一时候,返回注冊成功给用户。而发邮件则由发邮件线程处理?怎样处理发邮件的线程呢?我眼下想到的有:1.每次须要执行时暂时创... 查看详情

暂停任务

...捷键是:ctrl键+z键2.前台继续执行如果任务的状态是暂停或者后台运行,可以使用fg命令来调回前台运行。命令如下:fg xx为数字,表示任务的序列号。不加序列号,恢复最后暂停的一个任务。3.查看暂停任务查看暂停或者后... 查看详情

unity3d失去获取焦点,暂停

...olua进行项目开发,C#与lua交互的部分消息使用了注册监听处理,监听方法均放到Update方法里面进行处理,问题在于失去焦点后Update方法将不继续执行,这就导致了监听方法未能及时调用。   例如:AB玩家进行纸牌游戏... 查看详情

c#延时小函数很好用

平时我们在做winform开发的时候,有时候需要让程序休眠几秒钟,但是,如果我们直接使用thread.sleep()函数,页面ui就会停止响应。怎么样解决呢,你可以把页面涉及到表现ui的代码放到一个单线程处理,也可以采用我下面的做法... 查看详情

怎么样让前一个步骤执行完延时一下再执行下一步

jquery可以执行延时函数来决定某个函数:在jQuery1.4中性增加的,.delay()方法允许我们将队列中的函数延时执行。它既可以推迟动画队列中函数的执行,也可以用于自定义队列。只有队列中连续的事件会延迟;例如,不带参数的.show(... 查看详情

关于c#中的timer控件!

...生问题。 参考技术B会完成复制吧。最后的效果也许是你延时5秒。拷贝东西10秒,再延时5秒,后面再干别的什么的。也就是说你的间隔五秒要在第一次事件结束以后才开始重新计时。 参考技术CSystem.Threading.Timer是一个类 查看详情

如何在 C# 中停止/暂停表单绘制?

】如何在C#中停止/暂停表单绘制?【英文标题】:Howtostop/suspendaformfrompaintinginC#?【发布时间】:2013-09-1308:00:55【问题描述】:我正在尝试弄清楚如何阻止表格在屏幕上绘画。我的意思是当我启动表单时,它不会最终绘制表单,因... 查看详情

delphi真正实现延时暂停功能(代码片段)

用delphi怎么实现延时功能?在delphi中有一个sleep()函数是用来暂停线程的,使用了它好像和死掉了似得,不好用,这么简单的延时动作用Timer控件有显得复杂了。下面给大家分享一个真正好用的延时功能:proceduredelay(MSecs:LongInt);var... 查看详情

如何让cmd命令指定间隔时间执行1个命令

...:@ECHOOFFECHO系统将在10秒后显示下一条信息timeout/t10::表示延时10秒执行下一命令ECHO测试结束END 参考技术B批处理文件不可以的。因为它讲得就是速度,提交后不要人干预的。你可以用pause命令暂停处理,回车后继续处理。本回答... 查看详情

如何在使用 Selenium 自动执行测试时处理在调试器中暂停的覆盖

】如何在使用Selenium自动执行测试时处理在调试器中暂停的覆盖【英文标题】:HowtodealwiththeoverlayPausedindebuggerwhileautomatedtestexecutionusingSelenium【发布时间】:2019-10-2511:48:02【问题描述】:每次我尝试访问此website并打开google-chrome-dev... 查看详情

在 C# 中执行批处理文件

】在C#中执行批处理文件【英文标题】:ExecutingBatchFileinC#【发布时间】:2021-11-2401:56:35【问题描述】:我正在尝试在C#中执行一个批处理文件,但我没有任何运气。我在互联网上找到了多个这样做的例子,但它对我不起作用。publ... 查看详情

从 C# 执行批处理文件

】从C#执行批处理文件【英文标题】:ExecuteaBatchFileFromC#【发布时间】:2012-08-1113:38:35【问题描述】:我有一个小问题。好的,让我们从我的C#控制台应用程序中说,我想运行一个带有参数的批处理文件。我的C#应用程序停止时的... 查看详情

c#中怎样建立定时器?用以替代thread.sleep(),克服sleep延时不精确的问题。

thread.sleep()返回可是在指定时间前后几百毫秒内发生,很影响系统的稳定。怎样建立一个新的定时器,改定时器指定时间可以设定,定时精度在毫秒级别,最好不要太消耗资源,能让线程短时暂停就更好了。参考技术A推荐使... 查看详情