中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

Perl中怎么使用進程處理函數

發布時間:2021-07-14 14:26:58 來源:億速云 閱讀:147 作者:Leah 欄目:開發技術

本篇文章給大家分享的是有關Perl中怎么使用進程處理函數,小編覺得挺實用的,因此分享給大家學習,希望大家閱讀完這篇文章后可以有所收獲,話不多說,跟著小編一起來看看吧。

Perl進程處理函數

1、Perl進程處理函數中Perl進程啟動函數

函數名eval

調用語法eval(string)

解說將string看作Perl語句執行。

正確執行后,系統變量$@為空串,如果有錯誤,$@中為錯誤信息。

例子$print="print(\"hello,world\\n\");";

eval($print);

結果輸出hello,world

函數名system

調用語法system(list)

解說list中***個元素為程序名,其余為參數。

system啟動一個進程運行程序并等待其結束,程序結束后錯誤代碼左移八位成為返回值。


例子@proglist=("echo","hello,world!");

system(@proglist);

結果輸出hello,world!

函數名fork

調用語法procid=fork();

解說創建程序的兩個拷貝--父進程和子進程--同時運行。子進程返回零,父進程返回非零
值,此值為子程序的進程ID號。

例子

$retval=fork();   if($retval==0){   #thisisthechildprocess   exit;#thisterminatesthechildprocess   }else{   #thisistheparentprocess   }

結果輸出無

函數名pipe

調用語法pipe(infile,outfile);

解說與fork合用,給父進程和子進程提供通信的方式。送到outfile文件變量的信息可以
通過infile文件變量讀取。步驟:

1、調用pipe

2、用fork將程序分成父進程和子進程

3、一個進程關掉infile,另一個關掉outfile

例子

pipe(INPUT,OUTPUT);   $retval=fork();   if($retval!=0){   #thisistheparentprocess   close(INPUT);   print("Enteralineofinput:\n");   $line=<STDIN>;   printOUTPUT($line);   }else{   #thisisthechildprocess   close(OUTPUT);   $line=<INPUT>;   print($line);   exit(0);   }

結果輸出$

program   Enteralineofinput:   Hereisatestline   Hereisatestline   $

函數名exec

調用語法exec(list);

解說與system類似,區別是啟動新進程前結束當前程序。常與fork合用,當fork分成兩個
進程后,子進程用exec啟動另一個程序。

例子

結果輸出

函數名syscall

調用語法syscall(list);

解說調用系統函數,list***個元素是系統調用名,其余為參數。

如果參數是數字,就轉化成C的整型數(typeint)。否則傳遞字符串的指針。詳見UNIX的幫助Perl文檔。

使用syscall必須包含文件syscall.pl,即:

require("syscall.ph");

例子

結果輸出

2、Perl進程處理函數中Perl進程終止函數

函數名die

調用語法die(message);

解說終止程序并向STDERR輸出錯誤信息。message可以為字符串或列表。如果***一個參
數不包含換行符,則程序文件名和行號也被輸出。

例子die("Cannotopeninputfile");

結果輸出Cannotopeninputfileatmyprogline6.

函數名warn

調用語法warn(message);

解說與die類似,區別是不終止程序。

例子warn("Danger!Danger!\n");

結果輸出Danger!Danger!


函數名exit

調用語法exit(retcode);

解說終止程序并指定返回值。

例子exit(2);

結果輸出無

函數名kill

調用語法kill(signal,proclist);

解說給一組進程發送信號。

signal是發送的數字信號,9為殺掉進程。

proclist是進程ID列表。詳見kill的UNIX幫助。

以上就是Perl中怎么使用進程處理函數,小編相信有部分知識點可能是我們日常工作會見到或用到的。希望你能通過這篇文章學到更多知識。更多詳情敬請關注億速云行業資訊頻道。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

九龙县| 万荣县| 枣强县| 社旗县| 苍梧县| 邵东县| 津南区| 太白县| 临武县| 社旗县| 岱山县| 吉林市| 贵州省| 日照市| 城口县| 于都县| 深州市| 黄冈市| 建水县| 新田县| 广宁县| 班戈县| 辛集市| 阳谷县| 金川县| 垫江县| 灵寿县| 城市| 鹿泉市| 雷波县| 监利县| 黄浦区| 郧西县| 上犹县| 柳林县| 虹口区| 白山市| 肥乡县| 大竹县| 临武县| 茂名市|