我的应用程序中有一个初始化线程,它聚合并顺序运行多个子线程(检查必要的目录,检查 xml 文件是否可用等)。如果不满足要求,我希望我的程序安全终止。
这里应该使用什么方法?
如果每个子线程都终止程序,如果他发现他的要求没有得到满足(例如在 java 中
System.exit(0);
),我认为这不是一个好习惯。我的另一个想法是每个线程在全局映射中设置一个布尔值。然后在初始化线程之后检查映射(但如果子线程 2 依赖于子线程 1,这将是一个问题)。好处是应用程序可以“软”终止
问题
因此,如果不满足启动要求,终止程序(约 6 kLOC 的中小型项目)被认为是良好做法。该概念应包括(至少)打印详细错误消息的可能性。
因为这个问题太宽泛了。我将它限制为 java 以减少它的广泛性。为了使它更复杂,我也会对包含并行性的概念感到高兴。