Làm cách nào tôi có thể xem ngăn xếp cuộc gọi của một tiến trình / luồng đang chạy?


14

Có người yêu cầu tôi lấy một ngăn xếp cuộc gọi hoặc theo dõi ngăn xếp của một quá trình đang chạy để anh ta có thể phân tích nó cho tôi.

Làm thế nào tôi có thể nhận được thông tin đó?

Câu trả lời:


35
  1. Nhận Process Explorer .

  2. Bật Hiển thị chi tiết cho tất cả các quy trình từ menu Tệp :

    nhập mô tả hình ảnh ở đây

  3. Trong khung chính, chọn quy trình bạn quan tâm:

    nhập mô tả hình ảnh ở đây

  4. Mở menu ngữ cảnh (nhấp chuột phải) cho quy trình đã chọn và nhấp vào Thuộc tính :

    nhập mô tả hình ảnh ở đây

  5. Trên tab Chủ đề , bạn sẽ có thể thấy danh sách các chuỗi đang chạy trong quy trình đó:

    nhập mô tả hình ảnh ở đây

  6. Chọn chủ đề bạn quan tâm và nhấp vào nút Stack :

    nhập mô tả hình ảnh ở đây

  7. Process Explorer bây giờ sẽ hiển thị ngăn xếp cuộc gọi hiện tại cho chuỗi đã chọn:

    nhập mô tả hình ảnh ở đây

Biểu tượng

Nếu việc khắc phục sự cố của bạn yêu cầu bạn có thêm thông tin chi tiết, việc tải các biểu tượng gỡ lỗi vào Process Explorer thường rất hữu ích . Đây là cách:

  1. Nếu bạn chưa cài đặt trình gỡ lỗi Windows, trước tiên bạn sẽ phải cài đặt Công cụ gỡ lỗi cho Windows .

  2. Trong Process Explorer, mở Cấu hình Biểu tượng ... từ menu Tùy chọn :

    nhập mô tả hình ảnh ở đây

  3. Nếu bạn đã cài đặt Công cụ gỡ lỗi (hoặc trình gỡ lỗi Windows khác), Process Explorer sẽ tự động tìm dbghelp.dlltệp. Nếu không, đặt đường dẫn chính xác ở đây.

    nhập mô tả hình ảnh ở đây

    Đường dẫn Biểu tượng sẽ trông giống như:

    SRV*C:\Symbols*http://msdl.microsoft.com/download/symbols
    

    Phần duy nhất bạn sẽ muốn điều chỉnh là C:\Symbols. Đó là vị trí nơi các biểu tượng gỡ lỗi sẽ được lưu trữ.


Có cách nào để kết xuất tất cả các chủ đề cuộc gọi ngăn xếp vào tập tin?
bgura
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.