Re[14]: [Gc] GC + Windows Mobile + Threads + Patch for WINCE

Ivan Maidanski ivmai at mail.ru
Mon Aug 24 23:26:54 PDT 2009


Hi!

biosli <biosli at hotmail.com> wrote:
> > > >> Then I defined VERY_SMALL_CONFIG, and the test passed.
> > > 
> > > >> Output result:
> > > >> Thread wait failed 6
> > > >> Thread wait failed 6
> > > >> Thread wait failed 6
> > > 
> > > >This is unclear:
> > 
> > I see the problem: comment out all CloseHandle() calls in win32_threads.h as a temporary solution and try again. (the handles we get are IDs in fact and should not be closed).
>  
> You are right! I comment out all CloseHandle calls in win32_threads.c. The test passed on my dopod P800!! Without any warning or Debugbreak.
> Test Output:
> Received WM_CLOSE, closing window
> The thread 'GC_win32_start' (0xda2ddb2) has exited with code 0 (0x0).
> Completed 6 tests
> Allocated 802728 collectable objects
> Allocated 1212 uncollectable objects
> Allocated 0 atomic objects
> Allocated 0 stubborn objects
> Finalized 1649/1649 objects - finalization is probably ok
> Total number of bytes allocated is 24151822
> Final heap size is 14675968 bytes
> Collector appears to work
> The thread 'GC_win32_start' (0x2da8e95e) has exited with code 0 (0x0).
> Unload module: chsime03.dll
> The program '[2e7743de] test_libgcd_Wince.exe' has exited with code 0 (0x0).
>  
> Best wishes,
> GC Beginner
> Zeyi Lee

Ok. I'll supply the proper patch - replacement for my ivmai119.diff (I no longer use thread handles for WinCE).

It would be good if you also try out various optimizations (before I supply the patch), i.e. test GC with:
1. remove SMALL_CONFIG and define USE_MUNMAP;
2. remove SMALL_CONFIG (remove also GC_GCJ_SUPPORT if defined) and define THREAD_LOCAL_ALLOC;
3. remove SMALL_CONFIG and define GC_GCJ_SUPPORT, THREAD_LOCAL_ALLOC, AO_ASSUME_ARM_ARCH6 and use -Ilibatomic_ops-1.2\src (this also requires my diff109_cvs and diff110 - http://article.gmane.org/gmane.comp.programming.garbage-collection.boehmgc/2954).

Bye.


More information about the Gc mailing list