Tôi cần phân tích chi phí hiệu năng của logic được lập trình của mình bằng trình gỡ lỗi C#. Vì vậy, tôi cần phải so sánh hai logic trong mã của tôi. Tôi không muốn cài đặt bất kỳ tiện ích nào như Phân tích vào VisualStudio của tôi. Tôi muốn phân tích mô-đun bằng cách viết các hàm đặc biệt. Chúng tôi có bất kỳ chức năng được xác định trước nào có sẵn trong C# không? Tôi cần tất cả các tùy chọn có sẵn để thử nghiệm một mô-đun cho GOOD (tốt tôi có nghĩa là phải mất thời gian ngắn nhất để thực hiện) FYI Tôi sử dụng phiên bản VisualStudio 2010 Professional.Tìm hiểu xem có bao nhiêu phần nghìn giây mà chương trình C# đã thực hiện trong trình gỡ rối của bạn
Q
Tìm hiểu xem có bao nhiêu phần nghìn giây mà chương trình C# đã thực hiện trong trình gỡ rối của bạn
5
A
Trả lời
10
Nếu bạn chỉ muốn đo thời gian mà hàm cần thực thi, bạn có thể sử dụng lớp Stopwatch.
mẫu:
Stopwatch stopWatch = new Stopwatch();
stopWatch.Start();
CallYourFunction();
stopWatch.Stop();
// Get the elapsed time as a TimeSpan value.
TimeSpan ts = stopWatch.Elapsed;
2
Make sử dụng StopWatch lớp avaialble trong System.Diagnostics namesapce
Stopwatch stopWatch = new Stopwatch();
stopWatch.Start();
//instead of this there is line of code that you are going to execute
Thread.Sleep(10000);
stopWatch.Stop();
// Get the elapsed time as a TimeSpan value.
TimeSpan ts = stopWatch.Elapsed; string elapsedTime = String.Format("{0:00}:{1:00}:{2:00}.{3:00}", ts.Hours, ts.Minutes, ts.Seconds, ts.Milliseconds/10);
Full bài viết: Get time of Code Execution Using StopWatch
2
Nếu bạn chỉ muốn để đo thời gian thực hiện bạn có thể sử dụng Stopwatch lớp.
Nói chung, bạn có thể hưởng lợi từ mọi thứ trong không gian tên System.Diagnostics.
1
Bạn có thể viết một hàm như thế này
CalculateTime()
{
//create timer
Stopwatch sw = new Stopwatch();
//start measuring time
sw.Start();
//your logic you want to measure
//stop recording time
sw.Stop();
//you can calculate result using sw.ElapsedTicks;
}
3
Các công cụ thông thường cho việc làm này là hồ sơ. Nếu bạn có phiên bản Ultimate hoặc Premium của Visual Studio 2010, bạn có thể sử dụng trình cấu hình sẵn có bằng cách làm theo các hướng dẫn sau: Beginners Guide to Performance Profiling.
Để đơn giản đo thời gian chính xác trong một ứng dụng .NET, bạn có thể sử dụng Stopwatch
:
// you usually need a lot of iterations to get a stable and accurate measurement
int iterations = 10000;
Stopwatch stopwatch = Stopwatch.StartNew();
// It is important to do as little as possible between starting the
// stopwatch and calling your function. If you need to allocate memory
// or do any startup actions, do them before you start.
for (int i = 0; i < iterations; ++i)
{
YourFunction();
}
// Similarly, don't do anything more after your code is done, just get
// the elapsed time immediately.
TimeSpan totalDuration = stopwatch.Elapsed;
TimeSpan durationForEachIteration =
TimeSpan.FromTicks(totalDuration.Ticks/iterations);
Các vấn đề liên quan
- 1. Chương trình đã chạy bao nhiêu lần? C#
- 2. Tìm hiểu xem có bao nhiêu người sử dụng phần mềm của tôi
- 3. Có bao nhiêu phần nghìn giây làm "chậm", "bình thường" và "nhanh" đại diện trong jQuery?
- 4. Thực hiện chương trình từ bên trong chương trình C
- 5. Cách tìm hiểu xem một chương trình có bị lỗi với tiến trình con không?
- 6. Bạn có thể phát hiện trình gỡ rối gắn với quá trình của bạn bằng Div by Zero
- 7. Hiểu Xcode trình gỡ rối var hiển thị
- 8. Trên Unix, tìm xem người dùng đã thực hiện chương trình có phải là root không?
- 9. C# thực hiện TNSPing theo chương trình
- 10. Trình gỡ rối từ xa của trình tạo Qt
- 11. Tháo gỡ các phần trong chương trình c
- 12. Trình hiển thị trình gỡ rối Visual C++?
- 13. Làm thế nào để bạn nhận được bao nhiêu bộ nhớ một chương trình sử dụng?
- 14. Chi phí tạo quá trình trong Windows là bao nhiêu?
- 15. Có bao nhiêu cách mà Chương trình java có thể kết thúc?
- 16. Có chương trình nào có thể giúp hiểu chương trình khác không?
- 17. bash: lưu trong một biến số giây mà một quá trình đã thực hiện để chạy
- 18. Trình gỡ rối Python có thực hiện bước trong máy phát không?
- 19. Powershell, có bao nhiêu thay thế đã làm cho bạn?
- 20. Làm thế nào tôi có thể xác định có bao nhiêu bộ nhớ chương trình của tôi hiện đang chiếm
- 21. Trình gỡ rối MSIL - Mdbg, Dbgclr, Cordbg
- 22. Công cụ để tìm hiểu điều gì đang làm chậm chương trình C?
- 23. Làm cách nào để xem một đối tượng trong trình gỡ rối của Xcode?
- 24. Sử dụng trình gỡ rối Leksah với các chương trình sử dụng readLn và tương tự
- 25. Bạn dành bao nhiêu thời gian lập trình để gỡ lỗi?
- 26. Thực hiện một chương trình khác trong C++
- 27. Bạn nên thực hiện bao nhiêu lần kiểm tra biến?
- 28. Dừng trình gỡ rối trên dòng mã hiện tại đang được thực thi
- 29. Làm thế nào để bạn thực hiện một chương trình ngủ trong C + + trên Win 32?
- 30. Trình gỡ rối JavaScript miễn phí?
Bạn không thể sử dụng một trình gỡ lỗi để đo Perf, nó làm chậm bạn chương trình xuống. Sử dụng một hồ sơ. Bạn đã mua sai giấy phép nếu bạn không muốn sử dụng tiện ích bổ sung, VS Prof không có hồ sơ. –
Các trình thu thập khác nhau có sẵn, chẳng hạn như RedGate ANTS. Hầu hết trong số này có phiên bản dùng thử nếu bạn muốn cung cấp cho họ một đi. –