abort 用法讨论
2015-10-09 11:06
204 查看
同事说:
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过程 用做是否往下执行的 条件判断或卡关时 可以用,
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过程 用做是否往下执行的 条件判断或卡关时 可以用,
相关文章推荐
- Sharepoint增加修改密码功能
- ref - 按引用传递参数
- [转] Linux下查看文件和文件夹大小
- 代码开发规范
- 【c++】vector用法
- Android Camera从Camera HAL1到Camera HAL3的过渡(已更新到Android6.0 HAL3.3)
- nginx 安装sticky遇到的问题
- 从贝尔实验室走出的巨人,甩乔布斯好几条街
- iOS学习可用网址
- 训练自己haar-like特征分类器并识别物体(1)
- Objective-C---9---内存管理 补充
- 001-storm简介
- VNC和远程桌面的区别
- Jenkins系列之—15 配置Jenkins用户和权限
- visio 画 弯曲 箭头 ( 波浪线 曲线)
- Centos安装g++错误 :No package g++ available
- iOS9联系人保存详解
- DLL初学者指南
- XCode 项目配置说明
- * 输出由1元,2元,5元纸币组成100元钱的所有方案 1,1,...,1=100 2,2,...,2=100