लिनक्स/जीडीबी दुनिया से आ रहा है, डिफ़ॉल्ट रूप से जीडीबी एक एसईजीवी का पता लगाने पर प्रोग्राम के निष्पादन को बाधित करता है, डिफ़ॉल्ट हैंडलर प्रक्रिया को साफ करने से पहले।LIGB ब्रेक SIGSEGV
एलएलडीबी इसी तरह की चाल कैसे कर सकता है? वर्तमान में प्रक्रिया अभी बाहर निकल जाता है, यह असंभव पश्व-अनुरेखन आदि
संपादित क्वेरी करने के लिए कर रही है: proccess handle -p true -n true -s true
का प्रयास किया - कोई परिणाम :(
(lldb) process handle -p true -n true -s true SIGSEGV
NAME PASS STOP NOTIFY
========== ===== ===== ======
SIGSEGV true true true
(lldb) run
Process 97630 launched: '/Volumes/My Finder Extensions 1/My_Daemon.app/Contents/PlugIns/My_ShellExt.appex/Contents/MacOS/My_ShellExt' (x86_64)
Process 97630 exited with status = 0 (0x00000000) Terminated due to signal 9
संपादित साथ: अधिक जानकारी:
(lldb) bt all
error: invalid thread
मुझे संदेह है कि lldb
भ्रष्ट के साथ अच्छा नहीं खेलता एड स्टैक्स - मैं _NSExtensionMain
एंट्री पॉइंट, या वहां से लाइन के नीचे कुछ समस्या को ट्रैक करने का प्रयास कर रहा हूं।
क्या आप वाकई अपने प्रोग्राम को SIGSEGV प्राप्त कर रहे हैं? सिग्नल 9 सिगिल है, और इसे डीबगर द्वारा पकड़ा नहीं जा सकता है (जब तक, संभवतः, ऐसा करने के लिए कुछ माच-विशिष्ट तरीका नहीं है)। –
यहां कुछ अजीब चल रहा है। प्रक्रिया के लिए हमें बाहर निकलने की स्थिति (0) मिली, इसलिए यह वास्तव में सामान्य रूप से बाहर निकल गया। निश्चित नहीं है कि हम यह भी सोचते हैं कि इसे सिग्नल 9 क्यों मिला है। बीटीडब्ल्यू, यदि आप किसी प्रोग्राम को डिबग कर रहे हैं और इसे सिगकिल मिल जाता है, तो यह सिगकिल के साथ डीबगर में रुक जाएगा। डीबगर सिगकिल्स को पकड़ सकता है, जो नहीं कर सकता वह उन्हें दबा रहा है। –
क्या आपके लिए चरण-दर-चरण डीबगिंग का प्रयास करना संभव है? मुझे लगता है कि आपका प्रोग्राम आईवीटी या पीसीबी जैसे 'संवेदनशील डेटा' के एक हिस्से को ओवरराइट करता है, यही कारण है कि आप 'बैकट्रैक' नहीं कर सकते हैं। – VivienG