gpt4 book ai didi

java - 在ThreadFactory中创建线程时如何访问Runnable?

转载 作者:行者123 更新时间:2023-12-01 17:27:15 27 4
gpt4 key购买 nike

我有一个ThreadPoolExecutor我使用自定义 ThreadFactory 创建。当我调用 execute()方法传递我的Runnable ,一个新的Thread是使用我的自定义 ThreadFactory 创建的。问题是我找不到访问 Runnable 内信息的方法.

例如,我有一个类(class) Job实现Runnable 。里面Job ,我有一处特性A我想在 newThread() 中访问我的定制方法ThreadFactory 。问题是我无法转换 Runnable作为参数传递给Job因为它不是 Job实例,它是 ThreadPoolExecutor.Worker 的实例类,这个类是 private .

最佳答案

您要么误用或误解了线程池的作用。创建线程和提交/运行任务的过程是完全解耦的。线程池决定何时创建新线程,它可能与提交的任何新任务完全无关。

最后记住,一个线程很可能在多个 Runnable 之间重用。

关于java - 在ThreadFactory中创建线程时如何访问Runnable?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13974319/

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