8152196: SuspendibleThreadSet::yield scales poorly

Use semaphore to wake up VM thread on last suspendible leave/yield.

Reviewed-by: mgerdin, drwhite
This commit is contained in:
Kim Barrett 2016-03-22 20:32:48 -04:00
parent cd3f80324f
commit 5f25c82c48
3 changed files with 65 additions and 25 deletions

View file

@ -47,6 +47,7 @@ void eventlog_init();
void mutex_init();
void chunkpool_init();
void perfMemory_init();
void SuspendibleThreadSet_init() NOT_ALL_GCS_RETURN;
// Initialization done by Java thread in init_globals()
void management_init();
@ -93,6 +94,7 @@ void vm_init_globals() {
mutex_init();
chunkpool_init();
perfMemory_init();
SuspendibleThreadSet_init();
}