0
我想知道如何在VisualStudio中創建一個循環。我能夠做一個while循環使用此代碼:如何在每次激活之間設置一段時間,在VisualStudio中創建一個循環?
int i = 0;
while (i<1)
{
//event
}
不過,我想添加的每個循環之間的停頓,因此當//事件完成,它重複之前暫停3秒鐘,任何幫助將不勝感激。謝謝!
我想知道如何在VisualStudio中創建一個循環。我能夠做一個while循環使用此代碼:如何在每次激活之間設置一段時間,在VisualStudio中創建一個循環?
int i = 0;
while (i<1)
{
//event
}
不過,我想添加的每個循環之間的停頓,因此當//事件完成,它重複之前暫停3秒鐘,任何幫助將不勝感激。謝謝!
以下是控制檯程序。它顯示了許多可能性之一。如果這不能滿足您的要求,那麼可能需要澄清這些要求。請注意,由於這是一個控制檯程序,我正在使用AutoResetEvent使程序等待,直到WorkDone的值爲3.您的TimerCallback可以執行任何需要執行的操作,並且每3秒執行一次。
using System;
using System.Threading;
namespace SO42323314
{
class Program
{
static void Main(string[] args)
{
WorkToDo ToDo = new WorkToDo();
Timer ticker = new Timer(TimerCallback, ToDo, 0, 3000);
ToDo.are.WaitOne();
}
/// <summary>
/// This will be called every time the interval occurs
/// </summary>
/// <param name="ToDoObject"></param>
static void TimerCallback(object ToDoObject)
{
WorkToDo ToDo = ToDoObject as WorkToDo;
Console.WriteLine(ToDo.WorkDone);
++ToDo.WorkDone;
if (ToDo.WorkDone > 3)
ToDo.are.Set(); // signal the AutoResetEvent
}
}
class WorkToDo
{
public int WorkDone = 0;
// initialize the AutoResetEvent to not signaled
public AutoResetEvent are = new AutoResetEvent(false);
}
}
Visual Studio是一種IDE,不是一種編程語言。 – tkausl
如果它不是一個UI線程使用Thread.Sleep(3000); ...假定C# – Axis
使用計時器而不是循環。 –