蒋铮 2016-04-22 02:54 采纳率: 0%
浏览 1559

设计一个 流程执行器,流程需要任意步数,如果中间有任意要出错的,都要回滚
,如何理解设计?

面试java研发工程师时,面试馆提出来的,需要编码实现!
我当时的理解是:
1、按照题目中说的流程执行器是,我理解是一个抽象出来,通用的执行器,那么就需要对流程一开始方法的入参还有流程中存在调用的全局变量都需要回退,这样的理解我一时想不出来解决方案,
2、如果是工作流模型的我认为建立节点,节点里是 操作对象(也就是方法),数据对象,状态,然后就想使用链表(工作流程)中存储一个操作节点,上一节点操作和下一节点操作,通过状态判断需不需要回退到到指定操作步奏,这样就需要为每一串操作创建一个工作流程,
3、再简单点,我就想到的是使用备忘录模式

貌似都没有很好的答到点子上

  • 写回答

1条回答 默认 最新

  • threenewbee 2016-04-22 06:07
    关注

    面试关键是要抓知识点,你一会儿设计模式一会儿数据结构,都没回答到点上。自己google“两阶段提交”或者“两段事务提交”,面试官不是让你造轮子的,而是看你对事务的理解。

    评论

报告相同问题?

悬赏问题

  • ¥15 数据库数据成问号了,前台查询正常,数据库查询是?号
  • ¥15 算法使用了tf-idf,用手肘图确定k值确定不了,第四轮廓系数又太小才有0.006088746097507285,如何解决?(相关搜索:数据处理)
  • ¥15 彩灯控制电路,会的加我QQ1482956179
  • ¥200 相机拍直接转存到电脑上 立拍立穿无线局域网传
  • ¥15 (关键词-电路设计)
  • ¥15 如何解决MIPS计算是否溢出
  • ¥15 vue中我代理了iframe,iframe却走的是路由,没有显示该显示的网站,这个该如何处理
  • ¥15 操作系统相关算法中while();的含义
  • ¥15 CNVcaller安装后无法找到文件
  • ¥15 visual studio2022中文乱码无法解决