2014-12-23 11 views
7

Uygulamamızla birkaç çökme yaşıyoruz ve herhangi birinizin içgörüsü veya benzeri bir deneyimi olup olmadığını görmek istedik. Aşağıdaki kilitlenme günlüğü bilgilerini paylaştım.Çökmeyi Düzeltmeye Çalışmak: QuartzCore - CA :: release_objects (X :: Liste <void const*> *)

iOS 8.1'i Çalıştırma. Bunu enstrümanlarla, statik analizörlerle çalıştırdık ve sorunu saptamaya çalışıyoruz.

QuartzCore 
CA::release_objects(X::List<void const*>*) 

13 
Crashed: Thread 
EXC_BAD_ACCESS KERN_INVALID_ADDRESS at 0x0042de0f48aa7488 


Thread : Crashed: Thread 
0 libobjc.A.dylib    0x0000000193debbdc objc_msgSend + 28 
1 CoreFoundation     0x0000000183561228 CFRelease + 524 
2 QuartzCore      0x0000000187788644 CA::release_objects(X::List<void const*>*) +   32 
3 QuartzCore      0x000000018778e498 -[CAAnimation dealloc] + 80 
4 libobjc.A.dylib    0x0000000193df1724 (anonymous namespace)::AutoreleasePoolPage::pop(void*) + 564 
5 libobjc.A.dylib    0x0000000193df2754 (anonymous namespace)::AutoreleasePoolPage::tls_dealloc(void*) + 72 
6 libsystem_pthread.dylib  0x00000001945fa3e0 _pthread_tsd_cleanup + 200 
7 libsystem_pthread.dylib  0x00000001945fa0ac _pthread_exit + 140 
8 libsystem_pthread.dylib  0x00000001945fb330 pthread_exit + 44 
9 Foundation      0x0000000184487000 -[NSObject(NSThreadPerformAdditions) performSelectorOnMainThread:withObject:waitUntilDone:] 
10 Foundation      0x0000000184555c24 __NSThread__main__ + 1096 
11 libsystem_pthread.dylib  0x00000001945fbe80 _pthread_body + 164 
12 libsystem_pthread.dylib  0x00000001945fbddc _pthread_body 
+1

Bkz. CFRelease() - Bu, QuartzCore'un nil olan veya daha önce yayımlanmış olan bir nesneyi yayınlamaya çalıştığı anlamına gelir. Uygulamanızı Zombies etkin olarak çalıştırmayı denedim. Bu, sorunu bulmanıza yardımcı olabilir (bu özelliği etkinleştirmek için nasıl bir öneride bulunabilirsiniz). –

+0

Zombies'i etkinleştirdim ancak maalesef çok yardımcı olmadı. – Jon

+0

Ne demek "çok yardımcı olmadı"? Demek istediğin, onu anlayamadın mı? Zombies log mesajı aslında ne dedi? - Ayrıca, sorunlu kodun burada performSelectorOnMainThread içerdiği oldukça açık: withObject: waitUntilDone: 've bir çeşit animasyon; Bu kodu bulabilir ve gösteremez misin? – matt

cevap

0

burada sorun Çekirdek Animasyon beklemiyordum bir nesne üzerinde bir ekstra salıverilmesini yaptığını, bu nedenle animasyon çerçevesi onun kadar temiz aşamasını yaptığında sorun Kodunuzdaki tanıtılan, ancak maruz kalmaktadır.

Bu sorunu çözmek için Profil Oluşturmayı kullanın. Atama profiler 'i seçin ve Yığın Tahsisleri için Başlatma Yapılandırması altındaki referans sayımlarını kaydet öğesine tıklayın.

Ardından sorun oluştuğunda, ayırma geçmişini görebileceksiniz ve bir sürüm eşleştirilmeyecek ve kaynak kod dosyalarınızdan birinden çıkarılmayacaktır.

İlgili konular