关于事务处理的一个问题请高手指教
www.dimcax.com
关于事务处理的一个问题请高手指教
我注册了一个命令,命令的开始, 启动事务处理,transaction tr = db.transactionmanager.starttransaction(); 然后打开块表等,命令能运行.但我发现,当程序运行到用户交互输入的地方,比如, promptpointoptions prptopt = new promptpointoptions("\n选择点:");如果此时我按取消(esc)键,当下一次我再输入这个命令的时候,这个命令确不管用了.我是这么解决的,把 if (prptoptres.status != promptstatus.ok) { return; } 改为, if (prptoptres.status != promptstatus.ok) { tr.commit();//或tr.dispose(); return; } 问题就不会出现. 但具体为什么,我还不是很明白,哪位高手能给解释下啊?谢谢.
可能是一个事务没有结束,我一般不会事务处理与用户交互输入交叉。
模具相关绿色软件
皆唯网