- Perl 基礎
- Perl - 首頁
- Perl - 簡介
- Perl - 環境
- Perl - 語法概述
- Perl - 資料型別
- Perl - 變數
- Perl - 標量
- Perl - 陣列
- Perl - 雜湊
- Perl - IF...ELSE
- Perl - 迴圈
- Perl - 運算子
- Perl - 日期和時間
- Perl - 子例程
- Perl - 引用
- Perl - 格式
- Perl - 檔案 I/O
- Perl - 目錄
- Perl - 錯誤處理
- Perl - 特殊變數
- Perl - 編碼標準
- Perl - 正則表示式
- Perl - 傳送電子郵件
- 高階 Perl
- Perl - 套接字程式設計
- Perl - 面向物件
- Perl - 資料庫訪問
- Perl - CGI 程式設計
- Perl - 程式包和模組
- Perl - 程序管理
- Perl - 嵌入式文件
- Perl - 函式引用
- 有用的 Perl 資源
- Perl - 常見問題解答
- Perl - 快速指南
- 有用的 Perl 資源
- Perl - 討論
Perl報警函式
描述
此函式設定“警報”,導致當前程序在 EXPR 秒後收到 SIGALRM 訊號。如果省略 EXPR,則使用 $_ 的值。
實際時間延遲不精確,因為不同的系統實現報警功能的方式不同。實際時間可能比請求值多或少一秒。你一次只能設定一個警報計時器。如果計時器正在執行,而你對警報函式進行新的呼叫,則警報計時器重置為新值。可以重新設定正在執行的計時器,而無需指定值 0 來設定新的計時器。
語法
以下是此函式的簡單語法 −
alarm EXPR alarm
返回值
此函式返回整數值,即為上一個計時器剩餘的秒數。
示例
以下是顯示基本用法的示例程式碼 −
#!/usr/bin/perl
eval {
local $SIG{ALRM} = sub { die "alarm\n" }; # NB: \n required
alarm $timeout;
$nread = sysread SOCKET, $buffer, $size;
alarm 0;
};
if ($@) {
die unless $@ eq "alarm\n"; # propagate unexpected errors
# timed out
} else {
# didn't
}
perl_function_references.htm
廣告