【问题标题】:Using System Timer as a stopwatch on a loop [duplicate]使用系统计时器作为循环上的秒表[重复]
【发布时间】:2013-12-24 18:36:48
【问题描述】:

我有一个填充随机板的进程,希望以最有效的方式,我有一个正在运行的循环,我想从循环开始到结束时计时一个秒表,这样我就可以将一种寻路算法的结果与另一种算法的结果进行比较,我以前没有使用过这样的计时器,我不确定我是否走错了路。

这个,我希望能更多地展示我正在尝试做的事情

 System.Timers.Timer gameTime = new System.Timers.Timer();

 gameTime.Interval = (1000);
 gameTime.Enabled = true;
 gameTime.Start();            

 m_turn = 1;

do
{
    //Proccess here
    m_turn++

while(m_turn <= 1000)

gameTime.Stop();
string printTime = gameTime. //The amount of times the interval has passed?

【问题讨论】:

    标签: c# timer


    【解决方案1】:

    由于您想测量时间间隔,我会使用 StopWatch 而不是 Timer

    var sw = System.Diagnostics.StopWatch.StartNew();
    PerformSecretAlgorithm();
    sw.Stop();
    long elapsed = sw.ElapsedMilliseconds();
    

    【讨论】:

    • Timers 有自己的用途,如果要测量区间,最好使用StopWatch。问题是您必须知道已经有类似的东西可用。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-10-07
    • 2010-11-14
    • 2013-05-05
    相关资源
    最近更新 更多