2011-07-15 45 views
16

Tôi tạo và chạy một dự án trong trình mô phỏng iPhone. Tôi gửi nó lên nền bằng cách nhấn nút home. Sau đó, tôi nhấn đúp vào nút trang chủ để tìm ứng dụng của tôi ở chế độ nền và nhấn vào ứng dụng đó. Nó sẽ hoạt động và ứng dụng tiếp tục chạy. Ở đây tôi không gặp vấn đề gì dù tôi lặp lại điều này bao nhiêu lần. Sau đó, tôi giết quá trình bằng cách nhấn vào dấu trừ nhỏ màu đỏ trên biểu tượng của ứng dụng. Nhưng nếu tôi lần nữa nhấn vào biểu tượng ứng dụng để khởi chạy lại nó, tôi sẽ gặp lỗi SIGKILL và lỗi ứng dụng. Điều gì có thể là lý do cho điều này? Có thể nào do các tùy chọn XCode của tôi gây ra?Nhận ngoại lệ SIGKILL khi khởi chạy lại ứng dụng

+1

Bảng điều khiển nói gì? –

+0

Nó chỉ nói nhận SIGKILL –

+0

Có nhiều khả năng lỗi SIGKILL. Cung cấp thông tin bảng điều khiển của bạn. – Raxit

Trả lời

21

Đây không thực sự là sự cố: Chỉ là XCode có phản ứng bị trì hoãn khi bạn nhấn vào dấu trừ nhỏ màu đỏ. Khi bạn chấm dứt ứng dụng theo cách này, hệ điều hành sẽ gửi tín hiệu SIGKILL tới quy trình của bạn - nhưng trình gỡ rối của XCode không "nhìn thấy" SIGKILL cho đến khi bạn khởi chạy lại ứng dụng.

Bạn có thể "khôi phục" từ "sự cố" này bằng cách nhấn nút Tiếp tục trong trình gỡ lỗi, tình cờ.

+0

+1 để giải thích lý do tại sao điều này xảy ra. Làm cho cảm giác hoàn hảo. – cduhn

+0

Nhưng, chỉ có một chút sắc thái. Nó không xảy ra với tất cả các ứng dụng. Nó xảy ra chỉ với 2 trong số đó –

+0

Có thể đó là một lỗi trong XCode mà nó xảy ra ở tất cả - trình gỡ lỗi thực sự không nên trình bày SIGKILL từ hệ điều hành như một cái gì đó được gỡ lỗi - nhưng tôi nghi ngờ nó có thể là một lúc trước khi điều này tăng lên đến đầu của Apple "điều cần sửa chữa trong XCode" danh sách. Tuy nhiên, nếu bạn đã gửi báo cáo lỗi cho Apple, nó có thể giúp họ nếu bạn bao gồm hai ứng dụng của bạn liên tục làm phiền lỗi (và các ứng dụng khác của bạn không). –

1

Tôi đã nhìn thấy các sự cố tương tự trong trình mô phỏng khi tôi không để trình gỡ lỗi tách riêng một cách duyên dáng khỏi ứng dụng. Thay vì giết chết ứng dụng bằng cách nhấn vào dấu trừ màu đỏ nhỏ, hãy thử nhấn nút "dừng" trong Xcode.

Để xác nhận thêm điều này liên quan đến trình gỡ rối, hãy thử chạy ứng dụng lần đầu tiên bằng cách nhấn vào biểu tượng thay vì sử dụng Xây dựng và Chạy trong Xcode. Sau đó giết nó bằng cách khai thác trên X màu đỏ và khởi động lại nó. Nếu nó vẫn bị treo mà không có trình gỡ rối được đính kèm, thì giả thuyết của tôi không hợp lệ.

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