2009-11-06 29 views
9

Có ai biết nếu bạn có thể nhận được khoảng thời gian giữa các điểm ngắt trong VS 2008 không? Plugin ?, VS lừa?Visual Studio 2008 - Nhận khoảng thời gian giữa các điểm ngắt?

Tôi KHÔNG muốn thêm mã vào mã nguồn hiện tại của mình để tìm hiểu xem phải mất bao lâu để chạy, tôi muốn một cách nhanh chóng và bẩn để có được điều này trong khi gỡ lỗi. Đối với bạn lừa thông minh ra có tôi biết tôi luôn luôn có thể whip ra một đồng hồ bấm giờ quá, nhưng tôi muốn cái gì đó là hơi chính xác là tốt.

Trả lời

17

Bạn có thể sử dụng một Tracepoint - mà khi hit, sẽ đưa ra những gì bạn nhập vào giao diện điều khiển cửa sổ:

alt text http://img24.imageshack.us/img24/3866/51292677.png

Sau đó, bạn có thể trừ sau này từ các cựu để có được thời gian giữa hai .

+2

Cảm ơn, đó chính xác là những gì tôi đang tìm kiếm. Nếu mã của bạn mất vài giây để chạy, bạn cũng có thể sử dụng {DateTime.Now.Second} – Crackerjack

+0

-1 Chỉ hoạt động khi gỡ lỗi C#. – Nikolai

+0

@Nikolai - "Cảm ơn, đó chính xác là những gì tôi đang tìm kiếm". –

0

Không thể nghĩ ra bất cứ điều gì để làm điều đó, nhưng có thể bạn có thể sử dụng thuật sĩ hiệu suất để có được một số thông tin hữu ích (thời gian). Mặt khác, bạn có thể in một tin nhắn trên mỗi lần truy cập, bạn có thể in thời gian hiện tại.

+0

-1 vì bạn bắt đầu bằng cách nói rằng bạn không thể nghĩ ra bất cứ điều gì. –

+0

để thực hiện điều đó, không giống nhau ... –

1

Có một số thủ thuật hữu ích mà bạn có thể sử dụng trong trường hợp này với macro gỡ lỗi @clk. Nó cung cấp dấu thời gian hiện tại.

Tại điểm ngắt đầu tiên bạn thêm đồng hồ @ clk = 0. Điều đó đặt lại nó về không. Tại điểm ngắt thứ hai nhìn vào giá trị của @clk - nó sẽ là khoảng thời gian kể từ điểm ngắt đầu tiên.

5

Thêm hai đồng hồ:

@clk 
@clk = 0 

Các debugger đánh giá chúng trên xuống dưới, vì vậy @clk sẽ hiển thị thời gian đảm nhận rằng bước gỡ rối, và @clk = 0 sẽ thiết lập lại nó trở lại 0 một lần nữa cho bước tiếp theo.

Các vấn đề liên quan