2009-07-23 29 views
16

Tôi đang gỡ lỗi một quy trình máy chủ đang chạy trong Eclipse 3.4.1. Có 20 chủ đề hoặc hơn, thức dậy ở khoảng thời gian khác nhau sau khi ngủ.Làm thế nào để ngăn chặn các chủ đề khác ăn cắp tập trung khi gỡ lỗi trong Eclipse?

Tôi đặt điểm ngắt trong một phương pháp trên một luồng và Eclipse dừng ở đó một cách chính xác. Chủ đề được mở rộng bằng dấu vết ngăn xếp trong chế độ xem Gỡ lỗi và tôi có thể sử dụng các nút khác nhau để xem qua. Đây là tất cả những gì tôi mong đợi.

Vấn đề của tôi là dường như khi một luồng đang chạy khác thức dậy trong khi tôi đang đi qua, nó đánh cắp tiêu điểm trong khung nhìn Debug. Chuỗi treo của tôi không được chọn hoặc mở rộng nữa (nó có dấu + bên cạnh nó) và tất cả các nút đều bị tắt. Tôi phải nhấp lại vào chuỗi bị treo để tiếp tục gỡ lỗi.

Có ai nhìn thấy điều này trước đây và biết bất kỳ cách giải quyết hoặc cài đặt nào mà tôi có thể thay đổi không?

Trả lời

4

Nếu phần trên không giúp bạn luôn có thể tắt tất cả các điểm ngắt sau khi bạn đang gỡ lỗi nơi bạn muốn.

Trong Breakpoints xem: Ctrl-A, Nhấp chuột phải -> Disable

0

Không chắc chắn nếu điều này sẽ làm việc (chưa có cài đặt Eclipse để xác nhận), nhưng có một tùy chọn gỡ lỗi mà bạn có thể thử.

Dưới Run/Debug trong Preferences, có một tùy chọn gọi là (một cái gì đó tương tự) Activate xem debug khi một breakpoint là hit. Nếu bạn bỏ chọn tùy chọn đó, Eclipse sẽ không chuyển tiêu điểm vào khung nhìn gỡ lỗi. Nó cũng có thể ngăn chặn các chủ đề cá nhân đánh cắp tiêu điểm.

1

bạn có thể sử dụng tùy chọn để ngăn chặn tất cả các chủ đề tại breakpoint?

7

Bạn có thể tạm dừng toàn bộ Java VM không chỉ chuỗi thực hiện để loại bỏ các vấn đề tiêu điểm.

Chọn điểm ngắt trong chế độ xem điểm ngắt và chọn "Tạm dừng máy ảo" thay vì "Tạm dừng chuỗi". Trong Tùy chọn-> Java-> Gỡ lỗi, bạn có thể đặt "Suspend VM" làm tùy chọn mặc định.

3

Tôi đã gặp sự cố tương tự khi gỡ lỗi các ứng dụng Play! Framework 2. Những gì dường như cuối cùng đã giải quyết nó là để bỏ chọn Java -> Màn hình trong trình đơn ngữ cảnh gỡ lỗi/thread xem bảng điều khiển.

+0

Dường như hiệu ứng tích cực không kéo dài, tôi quay trở lại với chủ đề bị treo mất tiêu điểm :-( –

+0

Tương tự ở đây, kéo dài một lúc (lâu hơn) cho đến khi có thứ gì đó bị đá lại. – cklab

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