Commit 538dacb8138d18eea2877ecd021c5494a9d20ffa

  • avatar
  • fduminy <fduminy @407389f7-7c16-0410…ad85acb55d7f.>
  • Mon Aug 24 12:52:13 CEST 2009
extracted heap iteration from getHeapStatistics() to allow reuse for other ObjectVisitors

git-svn-id: http://jnode.svn.sourceforge.net/svnroot/jnode/trunk@5660 407389f7-7c16-0410-9eee-ad85acb55d7f
  
2222
2323import java.io.PrintWriter;
2424
25import org.jnode.annotation.Inline;
26import org.jnode.annotation.MagicPermission;
2527import org.jnode.vm.MemoryBlockManager;
28import org.jnode.vm.ObjectVisitor;
2629import org.jnode.vm.VmArchitecture;
2730import org.jnode.vm.VmMagic;
28import org.jnode.annotation.Inline;
29import org.jnode.annotation.MagicPermission;
3031import org.jnode.vm.classmgr.ObjectFlags;
3132import org.jnode.vm.classmgr.ObjectLayout;
3233import org.jnode.vm.classmgr.VmClassLoader;
452452 final HeapStatisticsVisitor heapStatisticsVisitor = new HeapStatisticsVisitor(
453453 heapStatistics);
454454
455 accept(heapStatisticsVisitor, false);
456
457 return heapStatistics;
458 }
459
460 private void accept(ObjectVisitor visitor, boolean locking) {
455461 VmDefaultHeap heap = firstNormalHeap;
456462 final Word zero = Word.zero();
457463
458464 while (heap != null) {
459 heap.walk(heapStatisticsVisitor, false, zero, zero);
465 heap.walk(visitor, locking, zero, zero);
460466 heap = heap.getNext();
461467 }
462
463 return heapStatistics;
464468 }
465
469
466470 /**
467471 * @see org.jnode.vm.memmgr.VmHeapManager#createProcessorHeapData(org.jnode.vm.scheduler.VmProcessor)
468472 */