RFR: 8279031: Add API note to ToolProvider about being reusable/reentrant [v2]

Jaikiran Pai jpai at openjdk.java.net
Tue May 24 04:54:52 UTC 2022


On Mon, 23 May 2022 10:38:43 GMT, Christian Stein <cstein at openjdk.org> wrote:

>> This commit adds an  API note to ToolProvider about being reusable/reentrant.
>
> Christian Stein has updated the pull request incrementally with one additional commit since the last revision:
> 
>   Update src/java.base/share/classes/java/util/spi/ToolProvider.java
>   
>   Co-authored-by: Anthony Vanelverdinghe <dev at anthonyv.be>

src/java.base/share/classes/java/util/spi/ToolProvider.java line 59:

> 57:  * a tool may be the target of multiple {@code run} method invocations,
> 58:  * and reentrant means that multiple invocations of {@code run} may occur
> 59:  * concurrently.

Hello @sormuras,

> reentrant means that multiple invocations of {@code run} may occur
> concurrently.

My understanding of re-entrant was that the same method could be re-invoked on the same thread while the current method execution is in progress (a recursion). Whereas "multiple invocations may occur concurrently" sounds more like multiple threads invoking this concurrently (i.e. thread-safety). Which of these 2 characteristics are we recommending here?

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

PR: https://git.openjdk.java.net/jdk/pull/8833


More information about the core-libs-dev mailing list