$PROCESS_ID
$PID
$$

執行此指令碼的 Perl 程序編號。儘管您可以設定這個變數,但通常不建議這麼做,儘管它對於某些測試目的來說可能非常有價值。它會在 fork() 呼叫中自動重設。

對於 Linux 和 Debian GNU/kFreeBSD 使用者,請注意:在 Perl v5.16.0 之前,Perl 會使用 LinuxThreads 在 Linux 系統上模擬 POSIX 語意,LinuxThreads 是 POSIX 執行緒的部分實作,後來已被 Native POSIX 執行緒函式庫 (NPTL) 取代。

LinuxThreads 現在在 Linux 上已過時,而且像這樣快取 getpid() 會讓嵌入 Perl 變得不必要地複雜(因為您必須手動更新 $$ 的值),因此現在 $$getppid() 將永遠傳回與底層 C 函式庫相同的值。

Debian GNU/kFreeBSD 系統在 6.0 版本(含)之前也使用 LinuxThreads,但在之後則改為使用類 POSIX 的 FreeBSD 執行緒語意。

若要查看系統是否受到此差異影響,請檢查 getconf GNU_LIBPTHREAD_VERSION | grep -q NPTL 是否傳回 false 值。NTPL 執行緒會保留 POSIX 語意。

助記符:與 shell 相同。