equal
deleted
inserted
replaced
33 #include "code/nmethod.hpp" |
33 #include "code/nmethod.hpp" |
34 #include "code/pcDesc.hpp" |
34 #include "code/pcDesc.hpp" |
35 #include "code/scopeDesc.hpp" |
35 #include "code/scopeDesc.hpp" |
36 #include "gc/shared/collectedHeap.hpp" |
36 #include "gc/shared/collectedHeap.hpp" |
37 #include "gc/shared/gcLocker.hpp" |
37 #include "gc/shared/gcLocker.hpp" |
|
38 #include "gc/shared/oopStorage.hpp" |
38 #include "gc/shared/strongRootsScope.hpp" |
39 #include "gc/shared/strongRootsScope.hpp" |
39 #include "gc/shared/workgroup.hpp" |
40 #include "gc/shared/workgroup.hpp" |
40 #include "interpreter/interpreter.hpp" |
41 #include "interpreter/interpreter.hpp" |
41 #include "jfr/jfrEvents.hpp" |
42 #include "jfr/jfrEvents.hpp" |
42 #include "logging/log.hpp" |
43 #include "logging/log.hpp" |
641 |
642 |
642 post_safepoint_cleanup_task_event(event, safepoint_id, name); |
643 post_safepoint_cleanup_task_event(event, safepoint_id, name); |
643 } |
644 } |
644 } |
645 } |
645 |
646 |
|
647 if (_subtasks.try_claim_task(SafepointSynchronize::SAFEPOINT_CLEANUP_REQUEST_OOPSTORAGE_CLEANUP)) { |
|
648 // Don't bother reporting event or time for this very short operation. |
|
649 // To have any utility we'd also want to report whether needed. |
|
650 OopStorage::trigger_cleanup_if_needed(); |
|
651 } |
|
652 |
646 _subtasks.all_tasks_completed(_num_workers); |
653 _subtasks.all_tasks_completed(_num_workers); |
647 } |
654 } |
648 }; |
655 }; |
649 |
656 |
650 // Various cleaning tasks that should be done periodically at safepoints. |
657 // Various cleaning tasks that should be done periodically at safepoints. |