You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@camel.apache.org by "Claus Ibsen (Jira)" <ji...@apache.org> on 2026/08/03 05:42:00 UTC
[jira] [Commented] (CAMEL-20199) Complete support of Virtual Threads
[ https://issues.apache.org/jira/browse/CAMEL-20199?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=18101208#comment-18101208 ]
Claus Ibsen commented on CAMEL-20199:
-------------------------------------
PR merged: https://github.com/apache/camel/pull/25240 — Remove ThreadLocal Yaml caching in SnakeYAMLDataFormat
> Complete support of Virtual Threads
> -----------------------------------
>
> Key: CAMEL-20199
> URL: https://issues.apache.org/jira/browse/CAMEL-20199
> Project: Camel
> Issue Type: Improvement
> Components: came-core
> Reporter: Nicolas Filotto
> Assignee: Guillaume Nodet
> Priority: Major
> Fix For: 4.x
>
>
> For full support of Virtual Threads, several sub-tasks need to be done:
> * Avoid Lengthy and Frequent Pinning by replacing synchronized blocks with ReentrantLocks (use the option {{-Djdk.tracePinnedThreads=full}} to print stack traces when a thread blocks while pinned)
> * Don't Cache Expensive Reusable Objects in Thread-Local Variables by avoiding thread locals when possible since when using Virtual Threads, the objects will never be reused so if the thread-local variables are never reset, it will end up with an OOME.
> * Use Semaphores to Limit Concurrency instead of relying on the size of the thread pool when applicable
> * Allow to expose {{ThreadPerTaskExecutor}} through JMX indeed so far it is limited to {{ThreadPoolExecutor}}
> References [https://docs.oracle.com/en/java/javase/21/core/virtual-threads.html]
--
This message was sent by Atlassian Jira
(v8.20.10#820010)