Sweeper Class Reference

#include <sweeper.hpp>

Inheritance diagram for Sweeper:

Inheritance graph
[legend]
Collaboration diagram for Sweeper:

Collaboration graph
[legend]
List of all members.

Public Member Functions

 Sweeper ()
virtual void task ()=0
void print () const

Static Public Member Functions

static bool register_active_frame (frame fr)
static void clear_active_frame ()
static void print_all ()
static void step_all ()
static void add (Sweeper *sweeper)
static methodOop active_method ()
static nmethod * active_nmethod ()
static bool is_running ()

Protected Member Functions

Sweepernext () const
bool is_active () const
void set_active (bool value)
virtual void step ()
virtual void activate ()
virtual void deactivate ()
virtual int interval () const =0
virtual char * name () const =0

Protected Attributes

Sweeper_next
int _sweep_start
bool _is_active

Static Private Member Functions

static Sweeperhead ()

Static Private Attributes

static Sweeper_head = NULL
static int sweep_seconds = 0
static bool _is_running = false
static methodOop _active_method = NULL
static nmethod * _active_nmethod = NULL

Detailed Description

Definition at line 29 of file sweeper.hpp.


Constructor & Destructor Documentation

Sweeper::Sweeper (  ) 

Definition at line 69 of file sweeper.cpp.

References _is_active, _sweep_start, and sweep_seconds.


Member Function Documentation

void Sweeper::activate (  )  [protected, virtual]

Reimplemented in HeapSweeper, MethodSweeper, and ZoneSweeper.

Definition at line 93 of file sweeper.cpp.

References _is_active, LOG_EVENT1, and name().

Referenced by ZoneSweeper::activate(), MethodSweeper::activate(), HeapSweeper::activate(), and step().

Here is the call graph for this function:

static methodOop Sweeper::active_method (  )  [inline, static]

Definition at line 46 of file sweeper.hpp.

References _active_method.

Referenced by MethodSweeper::method_task().

static nmethod* Sweeper::active_nmethod (  )  [inline, static]

Definition at line 47 of file sweeper.hpp.

References _active_nmethod.

Referenced by ZoneSweeper::nmethod_task().

void Sweeper::add ( Sweeper sweeper  )  [static]

Definition at line 74 of file sweeper.cpp.

References _head, _next, and head().

Referenced by sweeper_init().

Here is the call graph for this function:

void Sweeper::clear_active_frame (  )  [static]

Definition at line 55 of file sweeper.cpp.

References _active_method, and _active_nmethod.

Referenced by SweeperTask::task().

void Sweeper::deactivate (  )  [protected, virtual]

Definition at line 98 of file sweeper.cpp.

References _is_active, LOG_EVENT1, and name().

Referenced by ZoneSweeper::activate(), ZoneSweeper::task(), and MethodSweeper::task().

Here is the call graph for this function:

static Sweeper* Sweeper::head (  )  [inline, static, private]

Definition at line 33 of file sweeper.hpp.

References _head.

Referenced by add(), print_all(), and step_all().

virtual int Sweeper::interval (  )  const [protected, pure virtual]

Implemented in HeapSweeper, and CodeSweeper.

Referenced by step().

bool Sweeper::is_active (  )  const [inline, protected]

Definition at line 57 of file sweeper.hpp.

References _is_active.

Referenced by step().

static bool Sweeper::is_running (  )  [inline, static]

Definition at line 50 of file sweeper.hpp.

References _is_running.

Referenced by lookupCache::cache_miss_lookup(), and VMProcess::execute().

virtual char* Sweeper::name (  )  const [protected, pure virtual]

Implemented in HeapSweeper, MethodSweeper, and ZoneSweeper.

Referenced by activate(), deactivate(), and print().

Sweeper* Sweeper::next (  )  const [inline, protected]

Definition at line 53 of file sweeper.hpp.

References _next.

Referenced by ZoneSweeper::activate(), print_all(), step_all(), and ZoneSweeper::task().

void Sweeper::print (  )  const

Definition at line 89 of file sweeper.cpp.

References name(), outputStream::print_cr(), and std.

Here is the call graph for this function:

void Sweeper::print_all (  )  [static]

Definition at line 38 of file sweeper.cpp.

References head(), and next().

Here is the call graph for this function:

bool Sweeper::register_active_frame ( frame  fr  )  [static]

Definition at line 43 of file sweeper.cpp.

References _active_method, _active_nmethod, frame::is_compiled_frame(), frame::is_interpreted_frame(), frame::method(), and frame::pc().

Referenced by SweeperTask::task().

Here is the call graph for this function:

void Sweeper::set_active ( bool  value  )  [inline, protected]

Definition at line 58 of file sweeper.hpp.

References _is_active.

void Sweeper::step (  )  [protected, virtual]

Definition at line 79 of file sweeper.cpp.

References _sweep_start, activate(), interval(), is_active(), sweep_seconds, and task().

Here is the call graph for this function:

void Sweeper::step_all (  )  [static]

Definition at line 60 of file sweeper.cpp.

References _is_running, head(), next(), and sweep_seconds.

Referenced by SweeperTask::task().

Here is the call graph for this function:

virtual void Sweeper::task (  )  [pure virtual]

Implemented in HeapSweeper, MethodSweeper, and ZoneSweeper.

Referenced by step().


Member Data Documentation

methodOop Sweeper::_active_method = NULL [static, private]

Definition at line 36 of file sweeper.hpp.

Referenced by active_method(), clear_active_frame(), and register_active_frame().

nmethod * Sweeper::_active_nmethod = NULL [static, private]

Definition at line 37 of file sweeper.hpp.

Referenced by active_nmethod(), clear_active_frame(), and register_active_frame().

Sweeper * Sweeper::_head = NULL [static, private]

Definition at line 32 of file sweeper.hpp.

Referenced by add(), and head().

bool Sweeper::_is_active [protected]

Definition at line 55 of file sweeper.hpp.

Referenced by activate(), deactivate(), is_active(), set_active(), and Sweeper().

bool Sweeper::_is_running = false [static, private]

Definition at line 35 of file sweeper.hpp.

Referenced by is_running(), and step_all().

Sweeper* Sweeper::_next [protected]

Definition at line 52 of file sweeper.hpp.

Referenced by add(), and next().

int Sweeper::_sweep_start [protected]

Definition at line 54 of file sweeper.hpp.

Referenced by step(), and Sweeper().

int Sweeper::sweep_seconds = 0 [static, private]

Definition at line 34 of file sweeper.hpp.

Referenced by step(), step_all(), and Sweeper().


The documentation for this class was generated from the following files:
Generated on Mon Oct 9 14:18:05 2006 for Strongtalk VM by  doxygen 1.4.7