2012-05-03 29 views
33

Tôi đang cố gắng tải LLDB (chạy trong Xcode 4.3.2 bằng ứng dụng OS X) để không dừng lại trên các tín hiệu nhất định. Nếu tôi nhậpĐịnh cấu hình LLDB vĩnh viễn (trong Xcode 4.3.2) không dừng lại trên các tín hiệu

process handle SIGUSR2 -n true -p true -s false

khi debug console nó hoạt động tốt và LLĐB không còn dừng lại trên SIGUSR2.

Tuy nhiên, nếu tôi đặt

command process handle SIGUSR2 -n true -p true -s false

vào ~/.lldbinit nó dường như bị bỏ qua. Các lệnh khác trong tệp này (ví dụ: bí danh) hoạt động tốt.

Làm cách nào để LLDB không bao giờ dừng lại trên một số tín hiệu nhất định?

+1

Tôi không nghĩ rằng những gì bạn muốn làm là có thể thực hiện được, mà không có một quy trình rõ ràng Quy trình là một khái niệm thời gian chạy. Có thể có một cài đặt hữu ích trong "danh sách cài đặt" mà bạn có thể đặt? – blueberryfields

+0

Cảm ơn, điều đó giải thích tại sao thêm lệnh vào ~/.lldbinit không hoạt động :) – puzzle

Trả lời

44

Trong trường hợp bất kỳ ai khác có câu hỏi này, cuối cùng tôi đã giải quyết nó bằng cách thêm điểm ngắt trong NSApplicationMain() (đối với các chương trình thuần túy C, main() cũng sẽ hoạt động).

Tôi đặt hành động điểm ngắt thành process handle SIGUSR2 -n true -p true -s false và bật tùy chọn "Tự động tiếp tục sau khi đánh giá".

Xcode 4 Breakpoint Screenshot

Nếu ai có một giải pháp thanh lịch hơn, tôi sẽ rất vui khi nghe.

+3

Tuyệt vời, cảm ơn. Làm việc như một say mê trên SIGPIPE quá. – sehugg

+6

Chỉ trong trường hợp ... Đừng quên thay đổi biểu tượng thành 'UIApplicationMain' cho iOS. – user500

+0

Itworks cho tôi. nhưng sau khi ứng dụng của tôi bị đóng băng. Đây có phải là hành vi thực sự không? – jongbanaag

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