< prev index next >

src/hotspot/share/classfile/systemDictionary.cpp

Print this page

        

*** 108,120 **** oop SystemDictionary::_java_system_loader = NULL; oop SystemDictionary::_java_platform_loader = NULL; bool SystemDictionary::_has_checkPackageAccess = false; - // lazily initialized klass variables - InstanceKlass* volatile SystemDictionary::_abstract_ownable_synchronizer_klass = NULL; - // Default ProtectionDomainCacheSize value const int defaultProtectionDomainCacheSize = 1009; OopStorage* SystemDictionary::_vm_weak_oop_storage = NULL; --- 108,117 ----
*** 1895,1920 **** RemoveClassesClosure rcc; ClassLoaderDataGraph::cld_do(&rcc); } // ---------------------------------------------------------------------------- - // Lazily load klasses - - void SystemDictionary::load_abstract_ownable_synchronizer_klass(TRAPS) { - // if multiple threads calling this function, only one thread will load - // the class. The other threads will find the loaded version once the - // class is loaded. - Klass* aos = _abstract_ownable_synchronizer_klass; - if (aos == NULL) { - Klass* k = resolve_or_fail(vmSymbols::java_util_concurrent_locks_AbstractOwnableSynchronizer(), true, CHECK); - // Force a fence to prevent any read before the write completes - OrderAccess::fence(); - _abstract_ownable_synchronizer_klass = InstanceKlass::cast(k); - } - } - - // ---------------------------------------------------------------------------- // Initialization void SystemDictionary::initialize(TRAPS) { // Allocate arrays _placeholders = new PlaceholderTable(_placeholder_table_size); --- 1892,1901 ----
< prev index next >