perl函数说明(exit)

来源:互联网 发布:淘宝买家秀兼职微信群 编辑:程序博客网 时间:2024/06/06 22:26
    • exit EXPR
    • exit

这个函数把 EXPR 当作一个整数计算然后立即以该数值为最终的程序错误状态退出。如果省略了 EXPR,那么该函数以 0 状态退出(意思是“没有错误”)。下面是一个程序片段,它让用户通过敲入 x 或 X 退出程序:

   $ans =    exit if $ans =~ /^[Xx]/;

如果别人有任何机会可以捕获所发生的任何错误,那么你就不应该用 exit 退出子过程。应该用 die,它可以用一个 eval 捕获。或者使用 Carp 模块的 die 的封装,比如 croak 或者 confess。

我们说 exit 函数立即退出,但这是一个赤裸裸的谎言。它尽可能快地退出,但是它首先调用任何已经定义了的 END 过程做退出时处理。这些过程无法退出 exit,尽管它们可以通过设置 $? 变量改变最终的退出值。同样,任何定义了 DESTROY 方法的类都将在程序真正退出前代表它的所有对象调用该方法。如果你确实需要忽略退出处理,那么你可以调用 POSIX 模块的 _exit 函数以避免所有 END 和析构器处理。而如果没有 POSIX 可用,你可以 exec "/bin/false" 或者类似的东西。


0 0
原创粉丝点击