On Tue, 9 May 2023 02:16:18 GMT, Serguei Spitsyn <sspit...@openjdk.org> wrote:
>> The compatible lifecycle `ThreadStart/ThreadEnd` events were added in JDK 19 >> to support legacy virtual thread unaware JVMTI agents which do not enable >> the can_support_virtual_threads capability. When this capability is enabled >> then the `VirtualThreadStart/VirtualThreadEnd` instead of the >> `ThreadStart/ThreadEnd` events are generated for virtual threads and can be >> managed (enabled/disabled) separately. If the the >> `can_support_virtual_threads` capability is disabled then the >> `ThreadStart/ThreadEnd` events are generated for virtual threads. >> This enhancement is to get rid of the compatible lifecycle >> `ThreadStart/ThreadEnd` events. >> Motivation: Performance overhead from compatible lifecycle events can be >> significant when a lot of virtual threads are created. >> >> Also, there is an experimental VM flag >> `PostVirtualThreadCompatibleLifecycleEvents` (enabled by default). >> If it is turned on then the default compatible lifecycle >> `ThreadStart/ThreadEnd` events for virtual threads are generated. This VM >> flag has to be removed now. >> >> Testing: >> The mach5 tiers 1-6 were submitted and passed. > > Serguei Spitsyn has updated the pull request incrementally with one > additional commit since the last revision: > > minot tweaks in the VirtualThreadStartTest Thank you for review, Chris! ------------- PR Comment: https://git.openjdk.org/jdk/pull/13874#issuecomment-1541171461