SORU
29 Kasım 2008, CUMARTESİ


EXC_BAD_ACCESS sinyal alındı

Cihaza uygulama dağıtırken, program aşağıdaki hata ile bir kaç döngüden sonra çıkın

Program received signal: "EXC_BAD_ACCESS".

Program iPhone simülatörü üzerinde herhangi bir sorun olmadan çalışır, aynı zamanda ve bir defada talimatları ile bir adım sürece hata ayıklama çalışır. Tekrar bırakıyorum en kısa sürede, EXC_BAD_ACCESS sinyal vururum.

Bu durumda, ivme kodda bir hata oldu. Herhangi bir hata atmak değil, bu yüzden simülatörü, içinde yürütmek. Ancak, bir kez cihaza dağıtılan yürütmek.

Bu sorunun cevabı çoğu-tüm yakalamak olarak bu açık korkunç Kötü Erişim hatası için terk ederim EXC_BAD_ACCESS genel hata ile anlaşma.

EXC_BAD_ACCESS genellikle yasadışı bellek erişimi sonucu olarak atılır. Cevaplar daha fazla bilgi aşağıda bulabilirsiniz.

Önce EXC_BAD_ACCESS sinyal karşılaşmış ve bununla nasıl başa çıktınız?

CEVAP
29 Kasım 2008, CUMARTESİ


Bellek yönetiminde bazı hatalar var gelen en mantıklı açıklama şüpheli açıklamalar. Birkaç haftadır iPhone geliştirme, ama Hedefi olan tecrübeli olsun C genel olarak çalıştığını söylemiştin. Eğer başka bir plan varsa bunun çok önemli bir noktaya değindin sürece gerçekten bellek yönetim kuralları içselleştirmek önce biraz sürebilir.

Unutma, bir şey olsun, bir ayırma fonksiyonu (genellikle statik ayırma yöntemi, ama orada birkaç Diğerleri), ya da bir kopya yöntemi, kendi hafızası çok ve gerekir bırakın, işin bittiğinde.

Ama eğer bir şey olursa hemen başka bir şey geldidahilfabrika yöntemleri (örneğin [NSString stringWithFormat]) o zaman bir autorelease referans anlamına olabilir serbest zaman geleceği ile diğer kod - öyle hayati bir ihtiyaç tutmak için etrafında ötesinde acil işlevini korur. Yoksa hafıza kalmış ayrılan süre kullanıyorsunuz, yoksa yayımladı ama tesadüfen hala geçerli, sırasında emülatör test, ama daha yayımladı ve ortaya kötü erişim hataları üzerinde çalışırken cihaz.

Bunları izlemek, ve iyi bir fikir yine de en iyi yolu ise belirgin sorunlar varsa bile () özellikle Sızıntıları seçeneğiyle Aletleri aracında uygulamayı çalıştırmak için.

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • Kassem G

    Kassem G

    25 EKİM 2006
  • kimaliz

    kimaliz

    18 Temmuz 2006
  • SegaAmerica

    SegaAmerica

    5 Mart 2008