< prev index next >
src/share/vm/gc/shared/concurrentGCThread.hpp
Print this page
rev 10297 : [mq]: webrev.01
rev 10298 : [mq]: webrev.02
*** 33,44 ****
protected:
bool volatile _should_terminate;
bool _has_terminated;
! // Create and start the thread (setting it's priority high.)
! void create_and_start();
// Do initialization steps in the thread: record stack base and size,
// init thread local storage, set JNI handle block.
void initialize_in_thread();
--- 33,44 ----
protected:
bool volatile _should_terminate;
bool _has_terminated;
! // Create and start the thread (setting it's priority.)
! void create_and_start(ThreadPriority prio = NearMaxPriority);
// Do initialization steps in the thread: record stack base and size,
// init thread local storage, set JNI handle block.
void initialize_in_thread();
*** 47,65 ****
// Record that the current thread is terminating, and will do more
// concurrent work.
void terminate();
- // Most implementations of ConcurrentGCThread use ConcurrentGCThread's termination protocol,
- // run(), and stop() methods, and provide specific implementations of run_service() and stop_service.
- // Otherwise run_service() and stop_service should not be called.)
-
// Do the specific GC work. Called by run() after initialization complete.
! virtual void run_service() { ShouldNotReachHere(); }
// Shut down the specific GC work. Called by stop() as part of termination protocol.
! virtual void stop_service() { ShouldNotReachHere(); }
public:
ConcurrentGCThread();
// Tester
--- 47,61 ----
// Record that the current thread is terminating, and will do more
// concurrent work.
void terminate();
// Do the specific GC work. Called by run() after initialization complete.
! virtual void run_service() = 0;
// Shut down the specific GC work. Called by stop() as part of termination protocol.
! virtual void stop_service() = 0;
public:
ConcurrentGCThread();
// Tester
< prev index next >