Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/design-patterns/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Design patterns 应用程序启动时使用什么设计模式异步加载各种内容_Design Patterns_Pseudocode - Fatal编程技术网

Design patterns 应用程序启动时使用什么设计模式异步加载各种内容

Design patterns 应用程序启动时使用什么设计模式异步加载各种内容,design-patterns,pseudocode,Design Patterns,Pseudocode,在我的应用程序启动过程中,我有几个任务要执行,直到应用程序可以完全运行 首先,它开始加载一些配置XML,进行一些webservice调用并加载一些库。所有这些都是异步完成的,以节省时间。当这些任务中的一些完成后,我必须再做一些,等等。所以,在启动完成之前,它是一个相当复杂的流程图 我已经在纸上画了这张图表,以便对正在发生的事情有一个清晰的概述 目前,这是通过许多布尔变量和许多if语句实现的。我认为这显然不是最好的方法,所以我的问题是: 这种任务通常使用什么设计模式?我考虑过状态机,但由于有太多可

在我的应用程序启动过程中,我有几个任务要执行,直到应用程序可以完全运行

首先,它开始加载一些配置XML,进行一些webservice调用并加载一些库。所有这些都是异步完成的,以节省时间。当这些任务中的一些完成后,我必须再做一些,等等。所以,在启动完成之前,它是一个相当复杂的流程图

我已经在纸上画了这张图表,以便对正在发生的事情有一个清晰的概述

目前,这是通过许多布尔变量和许多if语句实现的。我认为这显然不是最好的方法,所以我的问题是:


这种任务通常使用什么设计模式?我考虑过状态机,但由于有太多可能的状态取决于哪些任务首先完成,因此状态机的状态太多。

听起来像是一个业务流程引擎,但业务相当技术化。命令模式+观察者模式。