我有一个多线程应用程序,需要大约1小时才能完全完成。我想配置一些东西,以便在一小时后如果整个执行没有完成(即主要没有完成)我需要在日志中有一个警报。它以何种方式配置。
答案 0 :(得分:0)
跟踪您创建的线程总数,并将锁存器中的插槽数初始化为该数字。将锁存器的引用传递给每个线程。在finally块中,在子线程代码的末尾,您应该在线程终止之前调用countdown()
。
在主线程中,启动所有线程后,调用await()
方法。 (可选)您可以传递超时,此时您可以强制终止子线程,或者调用system.exit或其他东西。
答案 1 :(得分:0)
使用ScheduledExecutorService安排命令在给定的时间段后运行。然后,您可以编写一种方法来记录消息并将其连接到ScheduledExecutorService
。