equal
deleted
inserted
replaced
2102 // force_daemon is a concession to JNI, where we may need to add a |
2102 // force_daemon is a concession to JNI, where we may need to add a |
2103 // thread to the thread list before allocating its thread object |
2103 // thread to the thread list before allocating its thread object |
2104 static void add(JavaThread* p, bool force_daemon = false); |
2104 static void add(JavaThread* p, bool force_daemon = false); |
2105 static void remove(JavaThread* p); |
2105 static void remove(JavaThread* p); |
2106 static void non_java_threads_do(ThreadClosure* tc); |
2106 static void non_java_threads_do(ThreadClosure* tc); |
|
2107 static void java_threads_do(ThreadClosure* tc); |
|
2108 static void java_threads_and_vm_thread_do(ThreadClosure* tc); |
2107 static void threads_do(ThreadClosure* tc); |
2109 static void threads_do(ThreadClosure* tc); |
2108 static void possibly_parallel_threads_do(bool is_par, ThreadClosure* tc); |
2110 static void possibly_parallel_threads_do(bool is_par, ThreadClosure* tc); |
2109 |
2111 |
2110 // Initializes the vm and creates the vm thread |
2112 // Initializes the vm and creates the vm thread |
2111 static jint create_vm(JavaVMInitArgs* args, bool* canTryAgain); |
2113 static jint create_vm(JavaVMInitArgs* args, bool* canTryAgain); |
2140 // Apply "f->do_oop" to all root oops in all threads. |
2142 // Apply "f->do_oop" to all root oops in all threads. |
2141 // This version may only be called by sequential code. |
2143 // This version may only be called by sequential code. |
2142 static void oops_do(OopClosure* f, CodeBlobClosure* cf); |
2144 static void oops_do(OopClosure* f, CodeBlobClosure* cf); |
2143 // This version may be called by sequential or parallel code. |
2145 // This version may be called by sequential or parallel code. |
2144 static void possibly_parallel_oops_do(bool is_par, OopClosure* f, CodeBlobClosure* cf); |
2146 static void possibly_parallel_oops_do(bool is_par, OopClosure* f, CodeBlobClosure* cf); |
2145 // This creates a list of GCTasks, one per thread. |
|
2146 static void create_thread_roots_tasks(GCTaskQueue* q); |
|
2147 // This creates a list of GCTasks, one per thread, for marking objects. |
|
2148 static void create_thread_roots_marking_tasks(GCTaskQueue* q); |
|
2149 |
2147 |
2150 // Apply "f->do_oop" to roots in all threads that |
2148 // Apply "f->do_oop" to roots in all threads that |
2151 // are part of compiled frames |
2149 // are part of compiled frames |
2152 static void compiled_frame_oops_do(OopClosure* f, CodeBlobClosure* cf); |
2150 static void compiled_frame_oops_do(OopClosure* f, CodeBlobClosure* cf); |
2153 |
2151 |