[发明专利]流程控制方法及装置、计算机可读存储介质、终端在审
| 申请号: | 201710433673.X | 申请日: | 2017-06-09 |
| 公开(公告)号: | CN107316132A | 公开(公告)日: | 2017-11-03 |
| 发明(设计)人: | 王红娟;张金清;王玉奎 | 申请(专利权)人: | 浪潮金融信息技术有限公司 |
| 主分类号: | G06Q10/06 | 分类号: | G06Q10/06 |
| 代理公司: | 南京苏科专利代理有限责任公司32102 | 代理人: | 姚姣阳 |
| 地址: | 215000 江苏省苏州*** | 国省代码: | 江苏;32 |
| 权利要求书: | 查看更多 | 说明书: | 查看更多 |
| 摘要: | |||
| 搜索关键词: | 流程 控制 方法 装置 计算机 可读 存储 介质 终端 | ||
技术领域
本发明涉及流程控制技术领域,特别是涉及一种流程控制方法及装置、计算机可读存储介质、终端。
背景技术
为降低对国外技术的依赖度,目前从硬件到软件,从底层操作系统到上层各应用,国产化的呼声日渐高涨;而对于对外依赖度较高的金融行业,国产化的需求及趋势也越来越明显。为了适用于国产化操作系统,金融行业的诸多应用需要做向国产化系统迁移的工作。
一切应用的实际本质说到底都是流程控制,与编程语言类似,应用的流程也分为顺序流程、循环流程和分支流程。而对于流程的流转,分支流程是流程控制中最复杂且最具神秘感的流程控制方式。根据所对应提供的功能多少,采用分支流程的应用更是在流程控制方面需要下很大功夫完善其运行,避免出现设计之外的问题。
分支流程可分为同步阻塞流程与异步非阻塞流程。其中,对于同步阻塞流程,一般采用递归调用来进行流程控制。但是,在采用递归调用进行流程控制时,存在着流程控制可靠性差的问题。
发明内容
本发明实施例解决的技术问题是在提高流程控制的可靠性。
为解决上述问题,本发明实施例提供了一种流程控制方法,所述流程包括多个事件节点,所述方法包括:
当出现新增事件节点时,判断对应的流程栈是否已满;
当确定所述流程栈已满时,为所述流程栈申请增加对应的存储空间;
当对应的存储空间申请成功时,将所述新增事件节点压入所述流程栈的栈顶。
可选地,所述对应的存储空间大于或等于所述新增事件节点所占的存储空间。
可选地,所述方法还包括:
取出所述流程栈栈顶的事件节点并进行处理。
可选地,所述流程为同步阻塞流程。
本发明实施例还提供了一种流程控制装置,所述流程包括多个事件节点,所述装置包括:
判断单元,适于当出现新增事件节点时,判断对应的流程栈是否已满;
请求单元,当确定所述流程栈已满时,为所述流程栈申请增加对应的存储空间;
控制单元,适于当对应的存储空间申请成功时,将所述新增事件节点压入所述流程栈的栈顶。
可选地,所述对应的存储空间大于或等于所述新增事件节点所占的存储空间。
可选地,所述装置还包括:
处理单元,适于取出所述流程栈栈顶的事件节点并进行处理。
可选地,所述流程为同步阻塞流程。
本发明实施例还提供了一种计算机可读存储介质,其上存储有计算机指令,所述计算机指令运行时执行上述任一项所述的流程控制方法的步骤。
本发明实施例还提供了一种终端,包括存储器和处理器,所述存储器上储存有能够在所述处理器上运行的计算机指令,所述处理器运行所述计算机指令时执行上述任一项所述的流程控制方法的步骤。
与现有技术相比,本发明的技术方案具有以下的优点:
上述的方案,通过基于流程中的事件节点的数量,对对应的流程栈所占的存储空间进行调整,可以有效避免流程栈溢出情形的发生,提高流程控制的可靠性。
附图说明
图1是本发明实施例中的一种流程控制方法的流程图;
图2是本发明实施例中另一种流程控制方法的入栈和出栈操作的示意图;
图3是本发明实施例中的一种流程控制装置的结构示意图。
具体实施方式
现有技术中,一般采用递归调用来进行同步阻塞流程的流程控制。但是,因各不同操作系统分配给应用的栈空间是不确定且相对较小的,当递归调用层级太深时,易导致系统栈溢出风险的发生,从而发生应用崩溃甚至系统出错的情况,存在着可靠性差的问题。
为解决现有技术中存在的上述问题,本发明实施例采用的技术方案基于流程中的事件节点的数量,对对应的流程栈所占的存储空间进行调整,可以有效避免流程栈溢出情形的发生,提高流程控制的可靠性。
为使本发明的上述目的、特征和优点能够更为明显易懂,下面结合附图对本发明的具体实施例做详细的说明。
在具体实施中,为了避免不同的应用在不同的操作系统环境下迁移时,发生栈溢出的风险,
图1示出了本发明实施例中的一种流程控制方法的流程图。如图1所示的流程控制方法,适于对同步阻塞流程中的事件节点进行控制,具体可以包括如下的操作:
步骤S101:当出现新增事件节点时,判断对应的流程栈是否已满;当判断结果为是时,可以执行步骤S102;反之,则可以直接执行步骤S104。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于浪潮金融信息技术有限公司,未经浪潮金融信息技术有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201710433673.X/2.html,转载请声明来源钻瓜专利网。
- 同类专利
- 专利分类
G06Q 专门适用于行政、商业、金融、管理、监督或预测目的的数据处理系统或方法;其他类目不包含的专门适用于行政、商业、金融、管理、监督或预测目的的处理系统或方法
G06Q10-00 行政;管理
G06Q10-02 .预定,例如用于门票、服务或事件的
G06Q10-04 .预测或优化,例如线性规划、“旅行商问题”或“下料问题”
G06Q10-06 .资源、工作流、人员或项目管理,例如组织、规划、调度或分配时间、人员或机器资源;企业规划;组织模型
G06Q10-08 .物流,例如仓储、装货、配送或运输;存货或库存管理,例如订货、采购或平衡订单
G06Q10-10 .办公自动化,例如电子邮件或群件的计算机辅助管理





