这个问题在这里已经有了答案:Namingthreadsandthread-poolsofExecutorService(20个回答)关闭6年前。我有一个使用Executor的Java应用程序。框架,我的代码看起来像这样protectedScheduledExecutorServicescheduledExecutorService=newScheduledThreadPoolExecutor(5)我的理解是JVM在内部会创建一个包含5个线程的池。现在,当我在分析器中检查执行情况时,我会得到类似thread-pool2,thread-pool3的信息等等。Someofthesethrea
这个问题在这里已经有了答案:Namingthreadsandthread-poolsofExecutorService(20个回答)关闭6年前。我有一个使用Executor的Java应用程序。框架,我的代码看起来像这样protectedScheduledExecutorServicescheduledExecutorService=newScheduledThreadPoolExecutor(5)我的理解是JVM在内部会创建一个包含5个线程的池。现在,当我在分析器中检查执行情况时,我会得到类似thread-pool2,thread-pool3的信息等等。Someofthesethrea
有人可以简要解释一下如何以及何时使用ThreadFactory吗?使用和不使用ThreadFactory的示例可能对理解差异非常有帮助。谢谢! 最佳答案 这是一种可能的用法:假设您有一个ExecutorService以多线程方式执行您的Runnable任务,并且偶尔会有一个线程死于未捕获的异常。我们还假设您要记录所有这些异常。ThreadFactory通过允许您为线程正在执行的Runnable中未捕获的异常定义一个统一的记录器来解决此问题:ExecutorServiceexecutor=Executors.newSingleThre
有人可以简要解释一下如何以及何时使用ThreadFactory吗?使用和不使用ThreadFactory的示例可能对理解差异非常有帮助。谢谢! 最佳答案 这是一种可能的用法:假设您有一个ExecutorService以多线程方式执行您的Runnable任务,并且偶尔会有一个线程死于未捕获的异常。我们还假设您要记录所有这些异常。ThreadFactory通过允许您为线程正在执行的Runnable中未捕获的异常定义一个统一的记录器来解决此问题:ExecutorServiceexecutor=Executors.newSingleThre