Here's some further info on my problems with Snow Leopard. Our app appears to crash at random points, very soon after startup, when threading is busy. The error log always seems to refer to GC in combination with threads.
I noticed a bug report at the Mono site, also referring to monobjc, so this may not be a coincidence: https://bugzilla.novell.com/show_bug.cgi?id=537764 I have exactly the same problem. Laurent, did you get to do some testing on Snow Leopard yourself? If so, do you have the feeling that all functionality should simply work, including threading? If so, can you give any suggestions on what we can do to isolate this problem? It may be mono-related or monobjc related, what is your guess? Thanks! Franky Here is an example error log I got (Mac OSX 10.6, Mono 2.4.2.3_3, Monobjc 1.0.413): Thread 11 Crashed: 0 libSystem.B.dylib 0x95a62c8e __semwait_signal_nocancel + 10 1 libSystem.B.dylib 0x95a62b72 nanosleep$NOCANCEL$UNIX2003 + 166 2 libSystem.B.dylib 0x95ade5b2 usleep$NOCANCEL$UNIX2003 + 61 3 libSystem.B.dylib 0x95affbfd __abort + 136 4 libSystem.B.dylib 0x95affc6d abort_report_np + 0 5 DM 0x0012c5b8 GC_enable + 0 (misc.c:1080) 6 DM 0x00123c12 GC_push_all_stacks + 196 (darwin_stop_world.c:119) 7 DM 0x0012d8ff GC_default_push_other_roots + 11 (os_dep.c:2079) 8 DM 0x0012b6ce GC_push_roots + 279 (mark_rts.c:651) 9 DM 0x00128a85 GC_mark_some + 593 (mark.c:327) 10 DM 0x00122290 GC_stopped_mark + 525 (alloc.c:543) 11 DM 0x00121de9 GC_try_to_collect_inner + 449 (alloc.c:382) 12 DM 0x00123019 GC_collect_or_expand + 151 (alloc.c:1046) 13 DM 0x00123304 GC_allocobj + 313 (alloc.c:1125) 14 DM 0x00126f2f GC_generic_malloc_inner + 270 (malloc.c:136) 15 DM 0x00127086 GC_generic_malloc + 84 (malloc.c:192) 16 DM 0x0012728d GC_malloc_atomic + 142 (malloc.c:262) 17 DM 0x000ae5ec mono_array_new_specific + 206 (object.c:3536) 18 ??? 0x00e56a6b 0 + 15034987 19 ??? 0x147d1dd2 0 + 343743954 20 ??? 0x147d25a8 0 + 343745960 21 ??? 0x147d22ba 0 + 343745210 22 ??? 0x147d1966 0 + 343742822 23 ??? 0x147da4ac 0 + 343778476 24 ??? 0x147da1fa 0 + 343777786 25 ??? 0x147d9326 0 + 343773990 26 ??? 0x147d92a4 0 + 343773860 27 ??? 0x147f92dd 0 + 343904989 28 ??? 0x147f9262 0 + 343904866 29 ??? 0x147f920f 0 + 343904783 30 ??? 0x147f9a6a 0 + 343906922 31 ??? 0x147f99b7 0 + 343906743 32 ??? 0x0327fa19 0 + 52951577 33 ??? 0x0327f9ba 0 + 52951482 34 ??? 0x0327f83a 0 + 52951098 35 ??? 0x0327f78d 0 + 52950925 36 ??? 0x0327f6d9 0 + 52950745 37 ??? 0x0327f651 0 + 52950609 38 ??? 0x189db63c 0 + 412988988 39 ??? 0x032872bc 0 + 52982460 40 ??? 0x03287223 0 + 52982307 41 ??? 0x03287208 0 + 52982280 42 ??? 0x03286d95 0 + 52981141 43 ??? 0x03286c13 0 + 52980755 44 ??? 0x032869a8 0 + 52980136 45 ??? 0x00e56086 0 + 15032454 46 DM 0x000adc67 mono_runtime_invoke_array + 592 (object.c:3495) 47 DM 0x000ae74a mono_message_invoke + 225 (object.c:5010) 48 DM 0x000d017f mono_async_invoke + 153 (threadpool.c:990) 49 DM 0x000d26cc async_invoke_thread + 437 (threadpool.c:1389) 50 DM 0x000d6994 start_wrapper + 266 (threads.c:639) 51 DM 0x0011285d thread_start_routine + 138 (threads.c:286) 52 DM 0x0012ecd9 GC_start_routine + 106 (pthread_support.c:1382) 53 libSystem.B.dylib 0x95a22fe1 _pthread_start + 345 54 libSystem.B.dylib 0x95a22e66 thread_start + 34