Ho usato Objective C su iOS per circa un mese, ma ho un sacco di esperienza C++ precedente.Che cosa significa il parametro di codice in EXC_BAD_ACCESS?
La mia comprensione di EXC_BAD_ACCESS
è che è essenzialmente un Segmentation Fault, ovvero un tentativo di accedere alla memoria al di fuori dell'area consentita. Anche se abbastanza stranamente ho visto anche SIGSEGV
in un punto specifico di un'app iOS in crash. Ho notato che esiste un parametro di codice (ad esempio code=1
) come parte di questa eccezione e mi chiedo cosa significhi specificamente quel codice.
Ho sondato google e non riesco a trovare documentazione formale su questo errore, and apparently I'm not alone. Qualcuno sa cosa significa il parametro di codice qui?
Molto apprezzato. Penserei che Apple avrebbe documentato questo nei loro documenti. –
Penso che l'unico modo ragionevole per loro di documentare questo sarebbe nella loro documentazione del kernel Mach .. una documentazione che inizia con una pagina intitolata [Keep Out] (https://developer.apple.com/library/mac/documentation/ Darwin/Concettuale/KernelProgrammazione/keepout/keepout.html # // apple_ref/doc/uid/TP30000905-CH205-BEHJDFCA) –
Ha senso scoraggiare gli sviluppatori dalla scrittura del codice spaziale del kernel, ma questo ha a che fare con le applicazioni dello spazio utente che interagiscono con spazio del kernel. Penserei che la corretta interpretazione delle API e dei ritorni del sistema operativo sarebbe ben documentata. –