The invention discloses a method and system for compiling and executing a static flow model. The method includes: obtaining the static process model; analyze the static definition of static process model, static process model analysis; the static storage process model parsed in memory, denoted as memory model; encoding memory model and code slot of the code templates are filled by the source memory model the code file, save the source code file; the source code file in the source code, dynamic link library source code corresponding to the preservation of the dynamic link library; when you need to perform static process model, static loading process model corresponding to the dynamic link library into memory, in order to achieve the static process execution model. The compilation and execution method and system of the static process model provided by the invention can improve the efficiency of executing the static process model and apply to the operation of complex process instances.
【技术实现步骤摘要】
一种静态流程模型的编译执行方法及系统
本专利技术涉及计算机领域,特别是涉及一种静态流程模型的编译执行方法及系统。
技术介绍
计算机并不能直接接受和执行采用高级语言编写的源代码,先要翻译成机器语言,才能被计算机识别和执行。静态流程模型的执行往往通过解释执行的技术实现,解释执行的效率往往由于需要根据每句计算机语句来实时转为机器指令,从而使得整个系统的执行效率较低。流程模型的一次执行称为该流程对应的实例,一个静态模型执行多次即可产生多条实例,每条实例执行的活动集称为实例对应的轨迹。流程模型的每一次执行都要根据每句计算机语句来实时转为机器指令,即每执行一次就要翻译一次,占用了过多的计算机资源、执行效率低、不适用于复杂的流程实例的运行。
技术实现思路
本专利技术的目的是提供一种静态流程模型的编译执行方法及系统,能够提高执行静态流程模型的效率,适用于复杂的流程实例的运行。为实现上述目的,本专利技术提供了如下方案:一种静态流程模型的编译执行方法,所述方法包括:获取静态流程模型;对所述静态流程模型的静态定义进行解析,得到解析后的静态流程模型,所述解析后的静态流程模型包括所述静态流程模型的拓扑结构、所述静态流程模型中的各个元素、各所述元素的参数配置以及所述静态流程模型的全局配置;将解析后的静态流程模型存储在内存中,记为内存模型;对所述内存模型进行编码并对代码模板的代码槽进行填充,得到所述内存模型的源代码文件,保存所述源代码文件;对所述源代码文件中的源代码进行编译,生成所述源代码对应的动态链接库,保存所述动态链接库;当需要执行所述静态流程模型时,加载所述静态流程模型对应的动态链接 ...
【技术保护点】
一种静态流程模型的编译执行方法,其特征在于,所述方法包括:获取静态流程模型;对所述静态流程模型的静态定义进行解析,得到解析后的静态流程模型,所述解析后的静态流程模型包括所述静态流程模型的拓扑结构、所述静态流程模型中的各个元素、各所述元素的参数配置以及所述静态流程模型的全局配置;将解析后的静态流程模型存储在内存中,记为内存模型;对所述内存模型进行编码并对代码模板的代码槽进行填充,得到所述内存模型的源代码文件,保存所述源代码文件;对所述源代码文件中的源代码进行编译,生成所述源代码对应的动态链接库,保存所述动态链接库;当需要执行所述静态流程模型时,加载所述静态流程模型对应的动态链接库到内存中,以实现所述静态流程模型的执行。
【技术特征摘要】
1.一种静态流程模型的编译执行方法,其特征在于,所述方法包括:获取静态流程模型;对所述静态流程模型的静态定义进行解析,得到解析后的静态流程模型,所述解析后的静态流程模型包括所述静态流程模型的拓扑结构、所述静态流程模型中的各个元素、各所述元素的参数配置以及所述静态流程模型的全局配置;将解析后的静态流程模型存储在内存中,记为内存模型;对所述内存模型进行编码并对代码模板的代码槽进行填充,得到所述内存模型的源代码文件,保存所述源代码文件;对所述源代码文件中的源代码进行编译,生成所述源代码对应的动态链接库,保存所述动态链接库;当需要执行所述静态流程模型时,加载所述静态流程模型对应的动态链接库到内存中,以实现所述静态流程模型的执行。2.根据权利要求1所述的编译执行方法,其特征在于,所述对所述内存模型进行编码,得到所述内存模型的源代码文件,具体包括:提取所述内存模型的参数配置,所述内存模型的参数配置包括所述内存模型对应的所述静态流程模型的名称和版本号;根据所述内存模型的参数配置,查询模型仓库中是否存在所述内存模型对应的源代码文件;如果是,则返回所述模型仓库中存在的内存模型对应的源代码文件;如果否,对内存模型进行编码,形成源代码文件。3.根据权利要求1所述的编译执行方法,其特征在于,在所述对所述静态流程模型的静态定义进行解析之后,在所述将解析后的静态流程模型存储在内存中之前,还包括:根据解析后的静态流程模型判断所述静态流程模型在控制流层面和数据流层面是否正确;如果是,则将解析后的静态流程模型存储在内存中,记为内存模型。4.根据权利要求1所述的编译执行方法,其特征在于,所述静态流程模型中的各个元素包括:所述静态流程模型的开始事件、结束事件、中间事件、普通任务、人工任务、脚本任务、选择网关、并行网关。5.根据权利要求1所述的编译执行方法,其特征在于,所述参数配置包括:开始时间、结束时间、执行...
【专利技术属性】
技术研发人员:闻立杰,王建民,倪伟渊,钱忱,王宇娇,
申请(专利权)人:清华大学,华为技术有限公司,
类型:发明
国别省市:北京,11
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。