C# 如何在VisualStudio中创建循环,并在每次激活之间设置时间?
我想知道如何在VisualStudio中进行循环。我可以使用以下代码进行while循环:C# 如何在VisualStudio中创建循环,并在每次激活之间设置时间?,c#,C#,我想知道如何在VisualStudio中进行循环。我可以使用以下代码进行while循环: int i = 0; while (i<1) { //event } inti=0; 虽然(i以下是一个控制台程序。它显示了许多可能性中的一种。如果这不满足您的要求,那么可能需要澄清这些要求。请注意,由于这是一个控制台程序,我正在使用AutoResetEvent使程序等待,直到WorkOne的值为3。您的TimerCallback可以执行任何需要执行的操作完成并将每3秒执行一次 using
int i = 0;
while (i<1)
{
//event
}
inti=0;
虽然(i以下是一个控制台程序。它显示了许多可能性中的一种。如果这不满足您的要求,那么可能需要澄清这些要求。请注意,由于这是一个控制台程序,我正在使用AutoResetEvent使程序等待,直到WorkOne的值为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);
}
}
使用系统;
使用系统线程;
名称空间SO42323314
{
班级计划
{
静态void Main(字符串[]参数)
{
WorkToDo ToDo=新的WorkToDo();
计时器计时器=新计时器(TimerCallback,ToDo,0,3000);
ToDo.are.WaitOne();
}
///
///每次间隔发生时都会调用此函数
///
///
静态void TimerCallback(对象到对象)
{
WorkToDo ToDo=作为WorkToDo的ToDoObject;
控制台写入线(ToDo.WORDONE);
++ToDo.WORDONE;
如果(ToDo.WORDONE>3)
ToDo.are.Set();//向AutoResetEvent发送信号
}
}
课堂作业
{
公共int WORDONE=0;
//将AutoResetEvent初始化为not signaled(无信号)
public AutoResetEvent are=新的AutoResetEvent(false);
}
}
Visual Studio是一种IDE,而不是一种编程语言。如果不是ui线程,请使用thread.Sleep(3000);…假设使用C#使用计时器而不是循环。