初学者有关问题:不用线程,是男人就等10秒
菜鸟问题:不用线程,是男人就等10秒!
winfrom程序,不能用线程,因为控件不支持。
让程序等待10秒后继续执行。
我的方法,肯定是行不通啦,timer3_Tick根本不执行。就无限循环在while里了。
------解决方案--------------------
------解决方案--------------------
不知道你想让哪个线程等待,但web控件跨线程操作可以用控件的invoke方法实现。
------解决方案--------------------
SpinWait或者TickCount,InterLocked循环锁都可以设计大约10秒后继续; --这个是“纯”浪费CPU时间
ThreadPool.RegisterWaitForSingleObject 也可以设计延时;--这个是等待信号
System.Thread.Timer可以设置延时10s后执行;--只是构造器的设置
WaitHandle也可以 --等待信号量
------解决方案--------------------
把你的while拆了,分成两函数。
在timer里,计时到了,再执行第二个函数
------解决方案--------------------
你把打开网页后要执行的内容写在timer3里即可
private void waitTimes()
{
timer3.Interval = 10000;
timer3.Start();
打开几个页面
}
private void timer3_Tick(object sender, EventArgs e)
{
页面打开后要做的事
}
winfrom程序,不能用线程,因为控件不支持。
让程序等待10秒后继续执行。
我的方法,肯定是行不通啦,timer3_Tick根本不执行。就无限循环在while里了。
- C# code
public bool IsTime = true; private void waitTimes() { timer3.Interval = 10000; timer3.Start(); while (IsTime) { } timer3.Stop(); IsTime = true; } private void timer3_Tick(object sender, EventArgs e) { IsTime = false; }
------解决方案--------------------
------解决方案--------------------
不知道你想让哪个线程等待,但web控件跨线程操作可以用控件的invoke方法实现。
------解决方案--------------------
SpinWait或者TickCount,InterLocked循环锁都可以设计大约10秒后继续; --这个是“纯”浪费CPU时间
ThreadPool.RegisterWaitForSingleObject 也可以设计延时;--这个是等待信号
System.Thread.Timer可以设置延时10s后执行;--只是构造器的设置
WaitHandle也可以 --等待信号量
------解决方案--------------------
把你的while拆了,分成两函数。
在timer里,计时到了,再执行第二个函数
------解决方案--------------------
你把打开网页后要执行的内容写在timer3里即可
private void waitTimes()
{
timer3.Interval = 10000;
timer3.Start();
打开几个页面
}
private void timer3_Tick(object sender, EventArgs e)
{
页面打开后要做的事
}