the main collector execution loop . wait for a gc to be triggered , do the gc work and then wait again . concode_field_sep boolean heapDumpRequested concode_elem_sep CollectorContext context concode_elem_sep int collectionCount concode_elem_sep ArrayList<Collector> collectors concode_elem_sep int collectionAttemptBase concode_field_sep void triggerGC concode_elem_sep void init concode_elem_sep int getCollectionCount concode_elem_sep int getCollectionAttemptBase concode_elem_sep Collector current concode_elem_sep int allocateCollectorId concode_elem_sep Collector get concode_elem_sep int count concode_elem_sep int rendezvous concode_elem_sep CollectorContext getContext concode_elem_sep void collect concode_elem_sep void requestHeapDump
void function ( ) { while ( true ) { Scheduler . waitForGCStart ( ) ; try { collect ( ) ; } catch ( Exception loc0 ) { loc0 . printStackTrace ( ) ; Main . exitWithFailure ( ) ; } Scheduler . exitGC ( ) ; } }