新聞中心
本文和大家重點學(xué)習(xí)一下Perl進程處理函數(shù)的概念,這里主要包括Perl進程啟動函數(shù)和Perl進程終止函數(shù)兩部分內(nèi)容,希望本文的介紹能讓你有所收獲。

成都創(chuàng)新互聯(lián)專注于安多網(wǎng)站建設(shè)服務(wù)及定制,我們擁有豐富的企業(yè)做網(wǎng)站經(jīng)驗。 熱誠為您提供安多營銷型網(wǎng)站建設(shè),安多網(wǎng)站制作、安多網(wǎng)頁設(shè)計、安多網(wǎng)站官網(wǎng)定制、小程序制作服務(wù),打造安多網(wǎng)絡(luò)公司原創(chuàng)品牌,更為您提供安多網(wǎng)站排名全網(wǎng)營銷落地服務(wù)。
Perl進程處理函數(shù)
1、Perl進程處理函數(shù)中Perl進程啟動函數(shù)
函數(shù)名eval
調(diào)用語法eval(string)
解說將string看作Perl語句執(zhí)行。
正確執(zhí)行后,系統(tǒng)變量$@為空串,如果有錯誤,$@中為錯誤信息。
例子$print="print(\"hello,world\\n\");";
eval($print);
結(jié)果輸出hello,world
函數(shù)名system
調(diào)用語法system(list)
解說list中***個元素為程序名,其余為參數(shù)。
system啟動一個進程運行程序并等待其結(jié)束,程序結(jié)束后錯誤代碼左移八位成為返回值。
例子@proglist=("echo","hello,world!");
system(@proglist);
結(jié)果輸出hello,world!
函數(shù)名fork
調(diào)用語法procid=fork();
解說創(chuàng)建程序的兩個拷貝--父進程和子進程--同時運行。子進程返回零,父進程返回非零
值,此值為子程序的進程ID號。
例子
- $retval=fork();
- if($retval==0){
- #thisisthechildprocess
- exit;#thisterminatesthechildprocess
- }else{
- #thisistheparentprocess
- }
結(jié)果輸出無
函數(shù)名pipe
調(diào)用語法pipe(infile,outfile);
解說與fork合用,給父進程和子進程提供通信的方式。送到outfile文件變量的信息可以
通過infile文件變量讀取。步驟:
1、調(diào)用pipe
2、用fork將程序分成父進程和子進程
3、一個進程關(guān)掉infile,另一個關(guān)掉outfile
例子
- pipe(INPUT,OUTPUT);
- $retval=fork();
- if($retval!=0){
- #thisistheparentprocess
- close(INPUT);
- print("Enteralineofinput:\n");
- $line=
; - printOUTPUT($line);
- }else{
- #thisisthechildprocess
- close(OUTPUT);
- $line=;
- print($line);
- exit(0);
- }
結(jié)果輸出$
- program
- Enteralineofinput:
- Hereisatestline
- Hereisatestline
- $
函數(shù)名exec
調(diào)用語法exec(list);
解說與system類似,區(qū)別是啟動新進程前結(jié)束當(dāng)前程序。常與fork合用,當(dāng)fork分成兩個
進程后,子進程用exec啟動另一個程序。
例子
結(jié)果輸出
函數(shù)名syscall
調(diào)用語法syscall(list);
解說調(diào)用系統(tǒng)函數(shù),list***個元素是系統(tǒng)調(diào)用名,其余為參數(shù)。
如果參數(shù)是數(shù)字,就轉(zhuǎn)化成C的整型數(shù)(typeint)。否則傳遞字符串的指針。詳見UNIX的幫助Perl文檔。
使用syscall必須包含文件syscall.pl,即:
require("syscall.ph");
例子
結(jié)果輸出
2、Perl進程處理函數(shù)中Perl進程終止函數(shù)
函數(shù)名die
調(diào)用語法die(message);
解說終止程序并向STDERR輸出錯誤信息。message可以為字符串或列表。如果***一個參
數(shù)不包含換行符,則程序文件名和行號也被輸出。
例子die("Cannotopeninputfile");
結(jié)果輸出Cannotopeninputfileatmyprogline6.
函數(shù)名warn
調(diào)用語法warn(message);
解說與die類似,區(qū)別是不終止程序。
例子warn("Danger!Danger!\n");
結(jié)果輸出Danger!Danger!
函數(shù)名exit
調(diào)用語法exit(retcode);
解說終止程序并指定返回值。
例子exit(2);
結(jié)果輸出無
函數(shù)名kill
調(diào)用語法kill(signal,proclist);
解說給一組進程發(fā)送信號。
signal是發(fā)送的數(shù)字信號,9為殺掉進程。
proclist是進程ID列表。詳見kill的UNIX幫助。
例子
結(jié)果輸出
【編輯推薦】
- Eclipse平臺中Perl腳本開發(fā)
- Perl學(xué)習(xí)筆記----Perl命令行
- Perl數(shù)組和引用使用指導(dǎo)
- Perl基礎(chǔ) 解析Perl標(biāo)量和數(shù)組概念
- Perl模式匹配中的特殊字符用法指南
文章題目:全面認(rèn)識Perl進程處理函數(shù)
分享鏈接:http://m.fisionsoft.com.cn/article/codiesg.html


咨詢
建站咨詢
