Câu hỏi Khi sử dụng trình gỡ rối Java trong Intellij, "Drop Frame" có nghĩa là gì?


Tôi đã sử dụng trình gỡ lỗi Java trong Intellij 8 và nhận thấy một nút có nhãn "khung thả", không ai biết mục đích này phục vụ những gì? Làm thế nào / tại sao điều này sẽ được sử dụng / hữu ích?


76
2018-03-02 23:49


gốc




Các câu trả lời:


Bạn có thể xem ngăn xếp cuộc gọi của ứng dụng trong trình gỡ rối. Sử dụng chức năng "Drop Frame", bạn có thể "rơi trở lại" vào một khung ngăn xếp trước đó, theo một nghĩa nào đó quay ngược thời gian. Điều này có thể hữu ích khi nhập lại một hàm nếu bạn bỏ lỡ một điểm quan trọng mà bạn muốn xem lại.

Như tên "Stack Frame" gợi ý, những thay đổi đã được thực hiện cho trạng thái toàn cầu (như biến tĩnh, thay đổi giá trị trường và tương tự) sẽ không được hoàn tác, chỉ biến cục bộ được đặt lại. Điều này có thể dẫn đến một đường dẫn thực hiện khác với đường dẫn ban đầu dẫn đến điểm ngắt của bạn. Bạn cần phải nhận thức được điều này - Tôi thường xem đó là một tính năng hữu ích để khám phá các đường dẫn thực thi khác nhau mà không phải khởi động lại ứng dụng hoặc một quá trình dài đặc biệt dẫn đến ngăn xếp hiện tại. Kết hợp với sự thay đổi của các giá trị biến cũng có sẵn thông qua trình gỡ lỗi, bạn có thể làm tất cả các loại điều thú vị.

Xin lưu ý, tất nhiên, bất kỳ phản ứng phụ nào có thể xảy ra - e. g. lưu lượng mạng, thao tác tệp, đầu ra bàn điều khiển, v.v. - không thể được tua lại.


99
2018-03-03 00:01





Thả khung trong trình gỡ lỗi bật lên   khung ngăn xếp hiện tại và đặt   kiểm soát trở lại cuộc gọi   , đặt lại bất kỳ biến cục bộ nào.   Điều này rất hữu ích để lặp đi lặp lại bước   thông qua một hàm, nhưng được cảnh báo:   đột biến trường hoặc trạng thái toàn cục   thay đổi sẽ vẫn còn.

Xem thêm thông tin đây.


10
2018-03-02 23:56





Việc bỏ khung từ ngăn xếp bằng trình gỡ lỗi cơ bản cho phép bạn "tua lại" việc thực thi ứng dụng của bạn để đạt được trạng thái trước đó. Các biến bên ngoài khung ngăn xếp không được hoàn nguyên.

Là một lưu ý phụ, tôi tin rằng tính năng này được gọi là "Thả đến Khung "trong Eclipse, nhưng nó phục vụ cùng một mục đích.


5
2018-03-02 23:55