xamarin - mono-rt: Препълване на стека в неуправляван: IP: xxx, адрес на грешка: yyy

Моето приложение (xamarin.iOS) винаги се срива след известно време с грешката по-долу

съобщение:

mono-rt: Препълване на стека в неуправляван: IP: 0x29c2cc, адрес на грешка: 0xb0aedf4c

mono-rt: Препълване на стека в неуправляван: IP: 0x29c2cc, адрес на грешка: 0xb0aecdcc

Исканата операция предизвика препълване на стека.

Проследяване на стека:

at (wrapper managed-to-native) object:__icall_wrapper_mono_array_new_specific (intptr,int)
at System.Threading.Tasks.Task.HandleGenericException (System.Exception e) [0x00000] in /Developer/MonoTouch/Source/mono/mcs/class/corlib/System.Threading.Tasks/Task.cs:640 
at System.Threading.Tasks.Task.ThreadStart () [0x00123] in /Developer/MonoTouch/Source/mono/mcs/class/corlib/System.Threading.Tasks/Task.cs:445 
at System.Threading.Tasks.Task.Execute () [0x00000] in /Developer/MonoTouch/Source/mono/mcs/class/corlib/System.Threading.Tasks/Task.cs:514 
at System.Threading.Tasks.TpScheduler.TaskExecuterCallback (System.Object obj) [0x00007] in /Developer/MonoTouch/Source/mono/mcs/class/corlib/System.Threading.Tasks/TpScheduler.cs:59 

Местен

mono-rt:    0   RTouchIpad                     0x001492d7 mono_handle_native_sigsegv + 327

mono-rt:    1   RTouchIpad                     0x00153bfa sigabrt_signal_handler + 122

mono-rt:    2   libsystem_platform.dylib            0x056fbdeb _sigtramp + 43

mono-rt:    3   ???                                 0xffffffff 0x0 + 4294967295

mono-rt:    4   libsystem_sim_c.dylib               0x05414e12 abort + 127

mono-rt:    5   RTouchIpad                     0x002b8f33 monotouch_unhandled_exception_handler + 291

mono-rt:    6   RTouchIpad                     0x00149afb mono_invoke_unhandled_exception_hook + 91

mono-rt:    7   RTouchIpad                     0x00148b2c mono_handle_exception_internal + 6620

mono-rt:    8   RTouchIpad                     0x00147149 mono_handle_exception + 41

mono-rt:    9   RTouchIpad                     0x000e30b9 mono_x86_throw_exception + 137

mono-rt:    10  ???                                 0x0fbbde57 0x0 + 263970391

mono-rt:    11  RTouchIpad                     0x00148eb9 mono_altstack_restore_prot + 9

mono-rt:    12  ???                                 0x0fbbd83c 0x0 + 263968828

mono-rt:    13  ???                                 0x148185b0 0x0 + 344032688

mono-rt:    14  ???                                 0x13fcbcd0 0x0 + 335330512

mono-rt:    15  ???                                 0x13fcb558 0x0 + 335328600

mono-rt:    16  ???                                 0x13fcb4fc 0x0 + 335328508

mono-rt:    17  ???                                 0x0ff64827 0x0 + 267798567

mono-rt:    18  RTouchIpad                     0x001797db mono_jit_runtime_invoke + 843

mono-rt:    19  RTouchIpad                     0x002102ff mono_runtime_invoke + 127

mono-rt:    20  RTouchIpad                     0x002153ec mono_runtime_delegate_invoke + 92

mono-rt:    21  RTouchIpad                     0x002450ee async_invoke_thread + 2446

mono-rt:    22  RTouchIpad                     0x00250028 start_wrapper + 376

mono-rt:    23  RTouchIpad                     0x00285aa0 inner_start_thread + 240

mono-rt:    24  RTouchIpad                     0x0029ed5d GC_start_routine + 93

mono-rt:    25  libsystem_pthread.dylib             0x057ea5fb _pthread_body + 144

mono-rt:    26  libsystem_pthread.dylib             0x057ea485 _pthread_struct_init + 0

mono-rt:    27  libsystem_pthread.dylib             0x057efcf2 thread_start + 34

mono-rt: 
=================================================================
Got a SIGABRT while executing native code. This usually indicates
a fatal error in the mono runtime or one of the native libraries 
used by your application.
=================================================================

Някаква идея как най-добре да се реши този проблем?


person Matt    schedule 22.07.2014    source източник


Отговори (1)


Такива сривове често се причиняват от повреда в паметта вътре в приложението. Това не е лесно за диагностициране, освен ако няма (символизиран) доклад за срив (който ще включва всички нишки).

Можете да опитате да стартирате приложението си под Инструменти и то може да открие нещо необичайно.

Можете също така да подадете доклад за грешка и да включите възпроизводим тестов случай (или най-малко символизирания доклад за срив) .

person poupou    schedule 23.07.2014