2009-09-24 2 views
2

Я использую C#/.NET 1.1; как я могу вычислить время обработки, например, для копирования файла из одной системы в другую?Рассчитать время обработки

+0

просто известково время процесс копирования файла – maxy

ответ

15

System.Diagnostics.Stopwatch

Stopwatch sw = new Stopwatch(); 
sw.Start(); 
CopyFile(); 
sw.Stop(); 
Console.WriteLine("Elapsed : {0}", sw.Elapsed) 

Этот класс не доступен в .NET 1.1, вместо этого вы можете использовать QueryPerformanceCounter и QueryPerformanceFrequency API

[DllImport("kernel32.dll", SetLastError=true)] 
public static extern bool QueryPerformanceCounter(out long lpPerformanceCount); 

[DllImport("kernel32.dll", SetLastError=true)] 
public static extern bool QueryPerformanceFrequency(out long lpFrequency); 

... 

long start; 
long end; 
long freq; 
QueryPerformanceCounter(out start); 
CopyFile(); 
QueryPerformanceCounter(out end); 
QueryPerformanceFrequency(out freq); 
double seconds = (double)(end - start)/freq; 
Console.WriteLine("Elapsed : {0} seconds", seconds) 
+0

Я использую .net 2003 .. его там не возможно. – maxy

+0

Это то, что вы должны были указать в вопросе ... мы не можем догадаться! См. Мой обновленный ответ для решения .NET 1.1. –

+0

. NET Framework Поддерживается в версиях: 3.5, 3.0, 2.0 Вы ошибаетесь. – Blindy

Смежные вопросы