工作流处理方法、装置、计算机设备及存储介质制造方法及图纸

技术编号:19179414 阅读:19 留言:0更新日期:2018-10-17 00:45
本发明专利技术实施例提供了一种工作流处理方法、装置、计算机设备及存储介质。所述方法包括创建工作流引擎,所述工作流引擎包括流程节点;获取所述流程节点对应的节点状态,所述节点状态包括待执行状态以及正在执行状态;若所述流程节点的节点状态由待执行状态转换为正在执行状态,获取所述流程节点对应的节点事件;创建与所述节点事件对应的线程任务,并启动处理线程以执行所述线程任务。实施本发明专利技术实施例,可实现工作流引擎并发执行,有利于提升工作效率以及用户体验感。

Workflow processing method, device, computer equipment and storage medium

The embodiment of the invention provides a workflow processing method, device, computer equipment and storage medium. The method includes creating a workflow engine including a process node, obtaining the node state corresponding to the process node, including the pending state and the executing state, and obtaining the flow if the node state of the process node is converted from the pending state to the executing state. The node event corresponding to the process node; the thread task corresponding to the node event is created, and the processing thread is started to execute the thread task. Implementing the embodiment of the invention can realize concurrent execution of the workflow engine, which is beneficial to improving work efficiency and user experience.

【技术实现步骤摘要】
工作流处理方法、装置、计算机设备及存储介质
本专利技术涉及计算机数据处理领域,尤其涉及一种工作流处理方法、装置、计算机设备及计算机可读存储介质。
技术介绍
当今社会中,无论是工作还是生活都离不开人与人之间的协同工作。为了提升协同工作的效率,在计算机领域中工作流(WorkFlow)的应用越来越广泛。工作流已广泛应用于办公室自动化系统,电子政务系统的审批流程中。工作流就是工作流程的计算模型,即将工作流程中的工作如何前后组织在一起的逻辑和规则在计算机中以恰当的模型进行表示并对其实施计算。工作流要解决的主要问题是:为实现某个业务目标,在多个参与者之间,利用计算机,按某种预定规则自动传递文档、信息或者任务。但是现有技术中的工作流引擎无法实现并发执行,导致工作流引擎功能单一,使用体验差等问题。
技术实现思路
本专利技术实施例提供了一种工作流处理方法、装置、计算机设备及存储介质,旨在解决工作流引擎无法实现并发执行的问题。第一方面,本专利技术实施例提供了一种工作流处理方法,其包括:创建工作流引擎,所述工作流引擎包括流程节点;获取所述流程节点对应的节点状态,所述节点状态包括待执行状态以及正在执行状态;若所述流程节点的节点状态由待执行状态转换为正在执行状态,获取所述流程节点对应的节点事件;创建与所述节点事件对应的线程任务,并启动处理线程以执行所述线程任务。第二方面,本专利技术实施例提供了一种工作流处理装置,其包括:第一创建单元,用于创建工作流引擎,所述工作流引擎包括流程节点;第一获取单元,用于获取所述流程节点对应的节点状态,所述节点状态包括待执行状态以及正在执行状态;第二获取单元,用于若所述流程节点的节点状态由待执行状态转换为正在执行状态,获取所述流程节点对应的节点事件;第二创建单元,用于创建与所述节点事件对应的线程任务,并启动处理线程以执行所述线程任务。第三方面,本专利技术实施例又提供了一种计算机设备,其包括存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,其中,所述处理器执行所述程序时实现上述工作流处理方法。第四方面,本专利技术实施例还提供了一种计算机可读存储介质,其中所述计算机可读存储介质存储有计算机程序,所述计算机程序包括程序指令,所述程序指令当被处理器执行时使所述处理器执行上述工作流处理方法。本专利技术实施例提供一种工作流处理方法、装置、计算机设备及计算机可读存储介质。其中方法包括:创建工作流引擎,所述工作流引擎包括流程节点;获取所述流程节点对应的节点状态,所述节点状态包括待执行状态以及正在执行状态;若所述流程节点的节点状态由待执行状态转换为正在执行状态,获取所述流程节点对应的节点事件;创建与所述节点事件对应的线程任务,并启动处理线程以执行所述线程任务。实施本专利技术实施例,可实现工作流引擎并发执行,有利于提升工作效率以及用户体验感。附图说明为了更清楚地说明本专利技术实施例技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本专利技术的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。图1为本专利技术一实施例提供的一种工作流处理方法的流程示意图;图2为本专利技术一实施例提供的一种工作流处理方法的子流程示意图;图3为本专利技术一实施例提供的一种工作流处理方法的子流程示意图;图4为本专利技术一实施例提供的一种工作流处理方法的流程示意图;图5为本专利技术一实施例提供的一种工作流处理方法的流程示意图;图6为本专利技术一实施例提供的一种工作流处理方法的流程示意图;图7为本专利技术一实施例提供的一种工作流处理方法的流程示意图;图8为本专利技术一实施例提供的一种工作流处理装置的示意性框图;图9为本专利技术一实施例提供的一种工作流处理装置中第二创建单元的示意性框图;图10为本专利技术一实施例提供的一种工作流处理装置中第一计算单元的示意性框图;图11为本专利技术一实施例提供的一种工作流处理装置的另一示意性框图;图12为本专利技术一实施例提供的一种工作流处理装置的另一示意性框图;图13为本专利技术一实施例提供的一种计算机设备的示意性框图。具体实施方式下面将结合本专利技术实施例中的附图,对本专利技术实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本专利技术一部分实施例,而不是全部的实施例。基于本专利技术中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本专利技术保护的范围。应当理解,当在本说明书和所附权利要求书中使用时,术语“包括”和“包含”指示所描述特征、整体、步骤、操作、元素和/或组件的存在,但并不排除一个或一个以上其它特征、整体、步骤、操作、元素、组件和/或其集合的存在或添加。还应当理解,在此本专利技术说明书中所使用的术语仅仅是出于描述特定实施例的目的而并不意在限制本专利技术。如在本专利技术说明书和所附权利要求书中所使用的那样,除非上下文清楚地指明其它情况,否则单数形式的“一”、“一个”及“该”意在包括复数形式。请参照图1,其为本专利技术一实施例提供的一种工作流处理方法的流程示意图。该工作流处理方法可应用于服务器、台式电脑、手提电脑、平板电脑、个人数字助理(PDA)、智能手机(如Android手机、IOS手机等)等终端中。具体地,该方法包括步骤S110-S140。S110,创建工作流引擎,所述工作流引擎包括流程节点。具体实施中,该工作流引擎包括但不限于Shark、osworkflow、jbpm、Acitiviti等工作流引擎。具体地,假设该工作流引擎为Acitiviti工作流引擎。具体地,创建Acitiviti工作流引擎可通过如下任意一种方式实现:(1)通过ProcessEngineConfiguration的createStandaloneProcessEngineConfiguration()方法建立工作流引擎。(2)通过ProcessEngineConfiguration的createProcessEngineConfigurationFromResource()方法加载*.cfg.xml文件建立工作流引擎。(3)通过ProcessEngines的getDefaultProcessEngine()方法获取默认的工作流引擎。其中,所述工作流引擎可设置多个流程节点。流程节点是指当工程需若干个不同程序(流程)或分若干个阶段来完成时,某一程序或某一阶段结束,另一程序或某一阶段开始时的转接点类别点或时间点。S120,获取所述流程节点对应的节点状态,所述节点状态包括待执行状态以及正在执行状态。具体实施中,通过在所述工作流引擎中设置寄存器组,该寄存器组包括与各个流程节点一一对应的状态寄存器,该状态寄存器用于存放表示流程节点对应的节点状态的状态值。例如,假设状态值“0000000”表示待执行状态,状态值“00001111”表示正在执行状态。通过监控该寄存器组的各个寄存器的状态值,可实现对所述工作流引擎中的流程节点对应的节点状态的实时监控。S130,若所述流程节点的节点状态由待执行状态转换为正在执行状态,获取所述流程节点对应的节点事件。具体实施中,若所述流程节点对应的寄存器的状态值由“0000000”转换为“00001111”,则判定所述流程节点对应的节点状态由待执行状态转换为正在执行状态。若所述本文档来自技高网...

【技术保护点】
1.一种工作流处理方法,其特征在于,包括:创建工作流引擎,所述工作流引擎包括流程节点;获取所述流程节点对应的节点状态,所述节点状态包括待执行状态以及正在执行状态;若所述流程节点的节点状态由待执行状态转换为正在执行状态,获取所述流程节点对应的节点事件;创建与所述节点事件对应的线程任务,并启动处理线程以执行所述线程任务。

【技术特征摘要】
1.一种工作流处理方法,其特征在于,包括:创建工作流引擎,所述工作流引擎包括流程节点;获取所述流程节点对应的节点状态,所述节点状态包括待执行状态以及正在执行状态;若所述流程节点的节点状态由待执行状态转换为正在执行状态,获取所述流程节点对应的节点事件;创建与所述节点事件对应的线程任务,并启动处理线程以执行所述线程任务。2.如权利要求1所述的方法,其特征在于,所述启动处理线程以执行所述线程任务,包括:计算执行所述线程任务所需的预测时间;判断所述预测时间是否大于预设的时间阈值;若所述预测时间大于预设的时间阈值,计算所述预测时间与预设的时间阈值的时间倍数;根据所述时间倍数计算需要启动的处理线程的总数量;根据所述需要启动的处理线程的总数量启动处理线程以执行所述线程任务。3.如权利要求2所述的方法,其特征在于,所述计算执行所述线程任务所需的预测时间,包括:获取已执行的线程任务所消耗的平均时间,以及获取所述线程任务的任务数量;根据所述平均时间以及所述任务数量计算执行所述线程任务所需的预测时间。4.如权利要求1所述的方法,其特征在于,所述方法还包括:判断所述节点事件是否满足异常判断条件;若所述节点事件满足异常判断条件,发送异常警告信息。5.如权利要求1所述的方法,其特征在于,所述方法还包括:在所述工作流引擎生成用于接收外部数据的数据保存类;通过所述数据保存类获取所述外部数据,并将所述外部数据转换为流程节点以及节点事件。6.如权利要求2所述的方法,其特征在于,所述根据所述时间倍数计算需要启动的处理线程的总数量,包括:获取当前已启动的处理线程数量;根据当前已启动的处理线程数量以及所述时间倍数计算需要启动的...

【专利技术属性】
技术研发人员:戴新云
申请(专利权)人:平安普惠企业管理有限公司
类型:发明
国别省市:广东,44

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1