估计用 C# 完成一个程序所需的时间
Estimate the amount of time it takes to complete a programme in C#
我正在使用秒表,我想估计从开始到结束需要多长时间。
它看起来像一个非常简单的复合体。我实例化了秒表,启动它,然后停止它,然后通过编写一个方法 .elapsed 它应该为我提供从开始到停止所需的时间。
不幸的是,它总是为我提供 00:00:00。
我是否必须在我的 PC 上设置一些特定于我的文化的东西?
我也试过 .StartNew() 但没有用。
Stopwatch stopwatch = new Stopwatch();
stopwatch.Start();
string juniorDevOpsFolder = "JuniorDevOps";
string targetPath = Directory.GetCurrentDirectory();
int endIndex = targetPath.IndexOf(juniorDevOpsFolder);
var juniorDevOpsPath = targetPath.Substring(0, endIndex + juniorDevOpsFolder.Length);
string directory = "Files";
string targetDirectory = Path.Combine(juniorDevOpsPath, directory);
ProcessDirectory(targetDirectory);
stopwatch.Stop();
// Write hours, minutes and seconds.
Console.WriteLine("Time elapsed: {0:hh\:mm\:ss}", stopwatch.Elapsed);
同样,输出是 00:00:00
这可能需要不到一秒钟的时间。尝试格式化毫秒。
也许这只是因为您的程序执行时间 少于 一秒,这就是为什么您得到零小时、零分钟和零秒的原因?尝试无格式输出或 ElapsesMilliseconds
属性
您的程序执行时间不到一秒,因此格式化 stopwatch.Elapsed
正在向控制台输出 00:00:00。尝试 stopwatch.ElapsedMilliseconds
而不是格式化 stopwatch.Elapsed
.
类似
Stopwatch stopwatch = new Stopwatch();
stopwatch.Start();
//Your business logic
stopwatch.Stop();
Console.WriteLine($"Elapsed milliseconds : {stopwatch.ElapsedMilliseconds}" );
那个代码呢:
var watch = new System.Diagnostics.Stopwatch();
watch.Start();
// do something what do you want
watch.Stop();
Console.WriteLine($"Execution Time: {watch.ElapsedMilliseconds} ms");
我正在使用秒表,我想估计从开始到结束需要多长时间。
它看起来像一个非常简单的复合体。我实例化了秒表,启动它,然后停止它,然后通过编写一个方法 .elapsed 它应该为我提供从开始到停止所需的时间。
不幸的是,它总是为我提供 00:00:00。
我是否必须在我的 PC 上设置一些特定于我的文化的东西?
我也试过 .StartNew() 但没有用。
Stopwatch stopwatch = new Stopwatch();
stopwatch.Start();
string juniorDevOpsFolder = "JuniorDevOps";
string targetPath = Directory.GetCurrentDirectory();
int endIndex = targetPath.IndexOf(juniorDevOpsFolder);
var juniorDevOpsPath = targetPath.Substring(0, endIndex + juniorDevOpsFolder.Length);
string directory = "Files";
string targetDirectory = Path.Combine(juniorDevOpsPath, directory);
ProcessDirectory(targetDirectory);
stopwatch.Stop();
// Write hours, minutes and seconds.
Console.WriteLine("Time elapsed: {0:hh\:mm\:ss}", stopwatch.Elapsed);
同样,输出是 00:00:00
这可能需要不到一秒钟的时间。尝试格式化毫秒。
也许这只是因为您的程序执行时间 少于 一秒,这就是为什么您得到零小时、零分钟和零秒的原因?尝试无格式输出或 ElapsesMilliseconds
属性
您的程序执行时间不到一秒,因此格式化 stopwatch.Elapsed
正在向控制台输出 00:00:00。尝试 stopwatch.ElapsedMilliseconds
而不是格式化 stopwatch.Elapsed
.
类似
Stopwatch stopwatch = new Stopwatch();
stopwatch.Start();
//Your business logic
stopwatch.Stop();
Console.WriteLine($"Elapsed milliseconds : {stopwatch.ElapsedMilliseconds}" );
那个代码呢:
var watch = new System.Diagnostics.Stopwatch();
watch.Start();
// do something what do you want
watch.Stop();
Console.WriteLine($"Execution Time: {watch.ElapsedMilliseconds} ms");