關於perl中Exit的函數使用

來源:互聯網
上載者:User

關於perl中Exit的函數使用

 

  o exit EXPR
  o exit

這個函數把 EXPR 當作一個整數計算然後立即以該數值為最終的程式錯誤狀態
退出。如果省略了 EXPR,那麼該函數以 0 狀態退出(意思是“沒有錯誤”)。

同時,函數的狀態是0代表著程式執行成功後推出,如果是1代表是程式執行失敗

後推出。當然,函數的狀態還可以取其他的值,但是眼根據perl語言具體啟動並執行環境。
下面是一個程式片段,它讓使用者通過敲入 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" 或者
類似的東西。

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.