" - 当第一个ES关闭时,第二es ES线程将会发生什么。我认为它们不会被关闭(因为只有关闭主线程,如果我理解正确的话,它们就不会被关闭(。
当您建立由线程池支持的执行器服务时,关闭该服务及其线程池至关重要。如果您的应用程序退出,则您的任务和池可能会继续前进,作为一种僵尸。确保将钩子插入应用程序的生命周期(启动,退出等(,以启动和停止执行者及其线程池。
另外,您可以重复使用执行器服务及其线程池,而不是产生新的池。有时有一个单独的池有意义,但是您应该非常清楚自己这样做的动力。
当您建立两个或多个执行器服务时,它们和他们的备份线程池是分开的。关闭一个对另一个没有影响。
顺便说一句,在某些情况下,在预定的执行者服务时间表中执行任务是明智的。但这也可能是"代码气味",这是关于糟糕设计的线索。您没有给出足够的细节来说明哪种情况,但是我建议您考虑一下并搜索执行者的许多其他现有帖子。