btpka3 created GROOVY-11712:
-------------------------------
Summary: CallSiteClassLoader loadClass using className level lock
Key: GROOVY-11712
URL: https://issues.apache.org/jira/browse/GROOVY-11712
Project: Groovy
Issue Type: Improvement
Affects Versions: 4.0.27
Reporter: btpka3
org.codehaus.groovy.runtime.callsite.CallSiteClassLoader#loadClass is using
`synchronized` keyword,this can be improved by using className level lock,
such as JDK's
java.lang.ClassLoader#[loadClass|https://github.com/openjdk/jdk/blob/jdk-11%2B28/src/java.base/share/classes/java/lang/ClassLoader.java#L565C24-L565C33](String,boolean)
```java
protected Class<?> loadClass(String name, boolean resolve)
throws ClassNotFoundException {
synchronized (getClassLoadingLock(name)) {
// ...
}
}
```
--
This message was sent by Atlassian Jira
(v8.20.10#820010)