(PHP 5 >= 5.3.0, PHP 7, PHP 8)
pcntl_sigprocmask — 設定與檢索被封鎖的訊號
pcntl_sigprocmask() 函式會根據 mode 參數,新增、移除或設定被封鎖的訊號。
mode設定 pcntl_sigprocmask() 的行為。可能的值為
SIG_BLOCK:將訊號新增至目前被封鎖的訊號。SIG_UNBLOCK:從目前被封鎖的訊號中移除訊號。SIG_SETMASK:以給定的訊號列表取代目前被封鎖的訊號。signals訊號列表。
old_signalsold_signals 參數會設定為包含先前被封鎖訊號列表的陣列。
| 版本 | 描述 |
|---|---|
| 8.4.0 | 如果 signal 為空,則會拋出 ValueError。 |
| 8.4.0 | 如果 signal 值不是 int,則會拋出 TypeError。 |
| 8.4.0 | 如果 signal 值無效,則會拋出 ValueError。 |
| 8.4.0 | 如果 mode 值不是 SIG_BLOCK、SIG_UNBLOCK 或 SIG_SETMASK,則會拋出 ValueError。 |
範例 1 pcntl_sigprocmask() 範例
<?php
pcntl_sigprocmask(SIG_BLOCK, array(SIGHUP));
$oldset = array();
pcntl_sigprocmask(SIG_UNBLOCK, array(SIGHUP), $oldset);
?>