C# 如何在c中暂停计时器一段时间,然后重新启动它
我正在使用System.Threading.Timer对象。我需要在tick方法中暂停计时器,以便我可以做一些事情,然后重新启动计时器以再次开始tickC# 如何在c中暂停计时器一段时间,然后重新启动它,c#,timer,C#,Timer,我正在使用System.Threading.Timer对象。我需要在tick方法中暂停计时器,以便我可以做一些事情,然后重新启动计时器以再次开始tick private async void timer1_Tick(object sender, EventArgs e) { timer1.Stop(); timer1.Enabled = false; if (btn7) { timer.
private async void timer1_Tick(object sender, EventArgs e)
{
timer1.Stop();
timer1.Enabled = false;
if (btn7)
{
timer.Stop();
}
fetch_hashtag();
br2(); //posting in hashtages
Console.WriteLine("waiting");
while (timer1.Enabled == false)
{
Application.DoEvents();
if (webBrowser2.Url.AbsoluteUri.Contains("blank"))
timer1.Enabled = true;
}
await Task.Delay((int)TimeSpan.FromMinutes(double.Parse(textBox4.Text)).TotalMilliseconds);
timer1.Start();
}
private async void timer1_Tick(object sender, EventArgs e)
{
timer1.Enabled = false;
timer1.Stop();
timer1.Tick -= timer1_Tick;
// do some stuff
timer1.Enabled = true;
timer1.Start();
timer1.Tick += timer1_Tick;
}
我需要在tick方法中暂停计时器,以便执行一些操作
填充,然后重新启动计时器以再次开始计时
private async void timer1_Tick(object sender, EventArgs e)
{
timer1.Stop();
timer1.Enabled = false;
if (btn7)
{
timer.Stop();
}
fetch_hashtag();
br2(); //posting in hashtages
Console.WriteLine("waiting");
while (timer1.Enabled == false)
{
Application.DoEvents();
if (webBrowser2.Url.AbsoluteUri.Contains("blank"))
timer1.Enabled = true;
}
await Task.Delay((int)TimeSpan.FromMinutes(double.Parse(textBox4.Text)).TotalMilliseconds);
timer1.Start();
}
private async void timer1_Tick(object sender, EventArgs e)
{
timer1.Enabled = false;
timer1.Stop();
timer1.Tick -= timer1_Tick;
// do some stuff
timer1.Enabled = true;
timer1.Start();
timer1.Tick += timer1_Tick;
}
该事件适用于System.Windows.Forms.Timer,而不是System.Threading.Timer。无论如何,只要打电话,做你的事情,然后再打电话:
你的问题是什么?考虑使用一个等待的任务。延迟循环代替。我不确定你在问什么,但我会告诉你这么多。您所做的远远超过了所需,在启用和停止的情况下,这只是多余的。您这样做到底想做什么?只需将构造函数的句点参数传递0,就不必暂停它。打电话给Change让它重新打勾。工作不好,怎么办?更详细地解释它是如何工作的,以及更多关于你正在做的事情…我从twitter获取趋势标签,然后在每个标签中发布一条tweet我需要每分钟都这样做,发生的事情是:首先获取标签并开始发布这个过程需要一分钟以上,所以在我第一次得到的标签发布完成之前。。。计时器在前一个进程完成之前发出新请求并获取另一个hashtags。。。