equal
deleted
inserted
replaced
108 oop SystemDictionary::_java_system_loader = NULL; |
108 oop SystemDictionary::_java_system_loader = NULL; |
109 oop SystemDictionary::_java_platform_loader = NULL; |
109 oop SystemDictionary::_java_platform_loader = NULL; |
110 |
110 |
111 bool SystemDictionary::_has_checkPackageAccess = false; |
111 bool SystemDictionary::_has_checkPackageAccess = false; |
112 |
112 |
113 // lazily initialized klass variables |
|
114 InstanceKlass* volatile SystemDictionary::_abstract_ownable_synchronizer_klass = NULL; |
|
115 |
|
116 // Default ProtectionDomainCacheSize value |
113 // Default ProtectionDomainCacheSize value |
117 |
114 |
118 const int defaultProtectionDomainCacheSize = 1009; |
115 const int defaultProtectionDomainCacheSize = 1009; |
119 |
116 |
120 OopStorage* SystemDictionary::_vm_weak_oop_storage = NULL; |
117 OopStorage* SystemDictionary::_vm_weak_oop_storage = NULL; |
1892 |
1889 |
1893 void SystemDictionary::remove_classes_in_error_state() { |
1890 void SystemDictionary::remove_classes_in_error_state() { |
1894 ClassLoaderData::the_null_class_loader_data()->dictionary()->remove_classes_in_error_state(); |
1891 ClassLoaderData::the_null_class_loader_data()->dictionary()->remove_classes_in_error_state(); |
1895 RemoveClassesClosure rcc; |
1892 RemoveClassesClosure rcc; |
1896 ClassLoaderDataGraph::cld_do(&rcc); |
1893 ClassLoaderDataGraph::cld_do(&rcc); |
1897 } |
|
1898 |
|
1899 // ---------------------------------------------------------------------------- |
|
1900 // Lazily load klasses |
|
1901 |
|
1902 void SystemDictionary::load_abstract_ownable_synchronizer_klass(TRAPS) { |
|
1903 // if multiple threads calling this function, only one thread will load |
|
1904 // the class. The other threads will find the loaded version once the |
|
1905 // class is loaded. |
|
1906 Klass* aos = _abstract_ownable_synchronizer_klass; |
|
1907 if (aos == NULL) { |
|
1908 Klass* k = resolve_or_fail(vmSymbols::java_util_concurrent_locks_AbstractOwnableSynchronizer(), true, CHECK); |
|
1909 // Force a fence to prevent any read before the write completes |
|
1910 OrderAccess::fence(); |
|
1911 _abstract_ownable_synchronizer_klass = InstanceKlass::cast(k); |
|
1912 } |
|
1913 } |
1894 } |
1914 |
1895 |
1915 // ---------------------------------------------------------------------------- |
1896 // ---------------------------------------------------------------------------- |
1916 // Initialization |
1897 // Initialization |
1917 |
1898 |