On Thu, 29 Jun 2023 23:39:55 GMT, Mandy Chung <mch...@openjdk.org> wrote:

> The spec of `ClassLoader::getClassLoadingLock` is unclear that this method is 
> intended for parallel-capable class loader implementations to provide an 
> alternate implementation.   For non-parallel-capable class loaders, this 
> method should return this `ClassLoader` object.   The javadoc uses "the 
> default implementation" which could be interpreted that non-parallel-capable 
> class loaders can also override this implementation, which is not the intent. 
>  See https://openjdk.org/groups/core-libs/ClassLoaderProposal.html.

Looks good. One change requested on terminology.

Thanks

src/java.base/share/classes/java/lang/ClassLoader.java line 656:

> 654:      * @apiNote
> 655:      * This method allows parallel capable class loaders to implement
> 656:      * finer-grained locking scheme such that multiple threads may load 
> classes

s/scheme/schemes/

src/java.base/share/classes/java/lang/ClassLoader.java line 658:

> 656:      * finer-grained locking scheme such that multiple threads may load 
> classes
> 657:      * concurrently without deadlocks.  For non-parallel-capable class 
> loaders,
> 658:      * the {@code ClassLoader} object is held during the class loading 
> operations.

s/is held/is synchronized on/  - as that is the terminology loadClass uses.

-------------

Changes requested by dholmes (Reviewer).

PR Review: https://git.openjdk.org/jdk/pull/14720#pullrequestreview-1506269248
PR Review Comment: https://git.openjdk.org/jdk/pull/14720#discussion_r1247270508
PR Review Comment: https://git.openjdk.org/jdk/pull/14720#discussion_r1247271118

Reply via email to