src/share/vm/memory/genCollectedHeap.cpp

changeset 1050
c6c601a0f2d6
parent 981
05c6d52fa7a9
child 1063
7bb995fbd3c0
child 1077
660978a2a31a
     1.1 --- a/src/share/vm/memory/genCollectedHeap.cpp	Fri Feb 27 15:30:47 2009 -0800
     1.2 +++ b/src/share/vm/memory/genCollectedHeap.cpp	Mon Mar 02 16:37:04 2009 -0800
     1.3 @@ -456,6 +456,9 @@
     1.4      int max_level_collected = starting_level;
     1.5      for (int i = starting_level; i <= max_level; i++) {
     1.6        if (_gens[i]->should_collect(full, size, is_tlab)) {
     1.7 +        if (i == n_gens() - 1) {  // a major collection is to happen
     1.8 +          pre_full_gc_dump();    // do any pre full gc dumps
     1.9 +        }
    1.10          // Timer for individual generations. Last argument is false: no CR
    1.11          TraceTime t1(_gens[i]->short_name(), PrintGCDetails, false, gclog_or_tty);
    1.12          TraceCollectorStats tcs(_gens[i]->counters());
    1.13 @@ -573,6 +576,10 @@
    1.14      // a whole heap collection.
    1.15      complete = complete || (max_level_collected == n_gens() - 1);
    1.16  
    1.17 +    if (complete) { // We did a "major" collection
    1.18 +      post_full_gc_dump();   // do any post full gc dumps
    1.19 +    }
    1.20 +
    1.21      if (PrintGCDetails) {
    1.22        print_heap_change(gch_prev_used);
    1.23  

mercurial