abort 用法讨论

 

同事说:
 TT***.factary(
  procedure()
  begin
    ....
    abort;
    ....
  end
)
大家在TTask中不建议用abort
因为难以控制,
我测试了一下,abort对于try...finally...中的finally的代码是会执行。
但代码中,有些不是在finally的,还有abort不会触发Terminate
线程要正常的结束,否则容易控制不好,好像我们的系统中没有需要用到abort的业务。
 Rogge  9:06:16
调用一般的函数可以用abort,线程中用abort 都不知道要退出到哪里去吧,
主进程是可以用 abort的,但线程最好不用。
//---------------------------------

procedure A()
begin
....
B;// 因为过程B中有abort,相当于调用 if not B then exit; (B过程要改成 fuction B() boolean)
....
end

procedure B()
begin
....
abort; //异常或条件不合时 直接跳出调用者
....
end


B过程 用做是否往下执行的 条件判断或卡关时 可以用,

posted @ 2015-10-09 11:06  海蓝7  阅读(535)  评论(0编辑  收藏  举报