RFR: 8290036: Define and specify Runtime shutdown sequence [v7]
Stuart Marks
smarks at openjdk.org
Fri Sep 30 21:38:27 UTC 2022
On Thu, 1 Sep 2022 06:31:11 GMT, David Holmes <dholmes at openjdk.org> wrote:
>> There are subtle differences (invoking a virtual Thread's run method directly does no nothing) but that is too much detail and would confusing to say anything about in the introduction paragraphs.
>>
>> The following is closer to what I think we should have. The existing paragraph 2 describes starting a thread so this is where the Thread.run method is introduced. Paragraph 3 follows to describe termination.
>>
>>
>> * <p> {@code Thread} defines constructors and a {@link Builder} to create threads.
>> * {@linkplain #start() Starting} a thread schedules it to execute its {@link #run() run}
>> * method. The newly started thread executes concurrently with the thread that caused
>> * it to start.
>> *
>> * <p> A thread <i>terminates</i> if either its {@code run} method completes normally,
>> * or if its {@code run} method completes abruptly and the appropriate {@linkplain
>> * Thread.UncaughtExceptionHandler uncaught exception handler} completes normally or
>> * abruptly. With no code left to run, the thread has completed execution. Thread
>> * defines the {@link #join() join} method to wait for a thread to terminate.
>
> That sounds reasonable to me.
OK, I've applied Alan's suggestion with slight edits.
-------------
PR: https://git.openjdk.org/jdk/pull/9437
More information about the core-libs-dev
mailing list