gpt4 book ai didi

quarkus - 如何在 Quarkus 中获取 ThreadFactory?

转载 作者:行者123 更新时间:2023-12-04 13:00:06 29 4
gpt4 key购买 nike

我正在尝试将 JEE 服务迁移到 Quarkus想知道如何在 Quarkus 应用程序中获取线程工厂。只需创建一个像 javaExecutors.defaultThreadFactory();就像在 JavaSE 中一样?

在 Java EE 环境中,您通常会使用托管线程工厂来创建要执行的线程:

@Resource
private ManagedThreadFactory mtf;

知道如何在 Quarkus 应用程序中正确执行此操作吗?

补充:不幸的是,使用 ManagedExecutor 是不可能的,因为像 Apache HttpAsyncClient 这样的一些库需要一个 ThreadFactory 来进行配置。

最佳答案

除非您有需要创建实际线程的特殊用例,否则我建议使用 Executor而不是 ThreadFactory .这通常更好,因为您可以将轻量级工作对象 (Runnable/Callable/etc) 提交给 Executor,它将在 Executor 的线程池(由 Quarkus 管理)上运行,而不是创建重量级线程。

Quarkus 提供对 MicroProfile Context Propagation 的支持,它基本上是 Java EE Con​​currency 的扩展。要使用它,你可以注入(inject)一个 ManagedExecutor像这样:

import org.eclipse.microprofile.context.ManagedExecutor;

// ...

@Inject
ManagedExecutor exec;

关于quarkus - 如何在 Quarkus 中获取 ThreadFactory?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59442653/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com