Erlang(7):顺序程序的错误处理
来源:互联网 发布:淘宝发布宝贝没有品牌 编辑:程序博客网 时间:2024/05/23 17:30
显式生成错误的方法:
erlang:get_stacktrace()获得最近的栈跟踪信息。
exit(Why) 广播一个信号给当前进程链接的所有进程。throw(Why) 抛出一个调用者可能想要捕捉的异常错误。error(Why) 指示奔溃性错误,非常严重的错误。
捕捉错误,try...catch
try FuncOrExpressionSeq ofPattern1[when Guard1] -> Expressions1;Pattern2[when Guard2] -> Expressions2;...catchExceptionType1: ExPattern1 [when ExGuard1] -> ExExpressions1;ExExpressions2: ExPattern2 [when ExGuard2] -> ExExpressions2;...afterAfterExpressionsend
提供了概括的信息
catch 语句,比try...catch更加早引入Erlang。
提供了详细的栈跟踪信息。
经常出现错误的时候的代码:
case f(x) of {ok, Val} -> do_some_thing_with(Val); {error, Why} -> %% ... 处理这个错误...end,...
try my_func(X)catch throw:{thisError, X} -> ... throw:{someOtherError, X} -> ...end
try Exprcatch _:_ -> ... 处理所有异常错误的代码end
erlang:get_stacktrace()获得最近的栈跟踪信息。
有错误,就要尽量往外面抛,展现出来。让程序彻底奔溃。这是Erlang 的原则。
或许吧。
但是不是做游戏的原则。
至少不是做游戏服务端的原则。
我们可以容忍错误的存在。因为我们是快速开发。bug是修不完的。
只能建一个修一个。
1 0
- Erlang(7):顺序程序的错误处理
- Erlang学习笔记(六)顺序程序的错误处理
- 《Erlang 程序设计》练习答案 -- 第六章 顺序程序的错误处理
- Erlang进程错误处理的术语含义
- Erlang中的错误处理
- Erlang中的错误处理
- erlang错误处理机制
- erlang中的错误处理
- Erlang 错误处理
- erlang中的错误处理
- 事件处理程序的处理顺序问题
- Erlang入门(四)—— 错误处理和鲁棒性
- erlang的错误日志
- Erlang 的错误日志
- erlang的程序打包
- erlang 程序的 批处理文件
- 运行Erlang的程序
- 程序的错误处理(转载)
- 字符串 开灯问题
- 前端技术学习之选择器(十)
- 向上
- 自定义View基础(三)View的绘图篇
- spring相关技术整理
- Erlang(7):顺序程序的错误处理
- app外包开发注意事项大全『最新』
- 图片库优化
- ubuntu 14.04中elasticsearch 2.3 + nginx
- Git 提交模板 Commit Template
- 打砖块Demo
- Android ScrollView和OnTouch冲突解决(最新)
- 执行 logcat 命令引发的EBUSY device or resource busy
- unity3d_坦克射炮弹