You can assign DateTime variable before the loop having the current date and time, then in each loop iteration simply check if 15 seconds have passed:
DateTime start = DateTime.Now;
for (int i = 1; i < 100000; i++)
{
if ((DateTime.Now - start).TotalSeconds >= 15)
break;
Console.WriteLine("This is test no. "+ i+ "
");
}
Update: while the above will usually work, it's not bullet proof and might fail on some edge cases (as Servy pointed out in a comment), causing endless loop. Better practice would be using the Stopwatch
class, which is part of System.Diagnostics namespace:
Stopwatch watch = new Stopwatch();
watch.Start();
for (int i = 1; i < 100000; i++)
{
if (watch.Elapsed.TotalMilliseconds >= 500)
break;
Console.WriteLine("This is test no. " + i + "
");
}
watch.Stop();
与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…