中文亚洲精品无码_熟女乱子伦免费_人人超碰人人爱国产_亚洲熟妇女综合网

當前位置: 首頁 > news >正文

wordpress 添加友鏈什么是seo營銷

wordpress 添加友鏈,什么是seo營銷,電商小程序報價,做問卷賺錢的網(wǎng)站目錄 前言: 1 直接看代碼和現(xiàn)象 2 解釋原理 3 將代碼改成多進程版本 4 認識所有函數(shù)并使用 前言: 由前面的章節(jié)學習,我們已經(jīng)了解了進程狀態(tài),進程終止以及進程等待,今天,我們學習進程替換。進程替換我…

目錄

前言:

1 直接看代碼和現(xiàn)象

2 解釋原理

3 將代碼改成多進程版本

4 認識所有函數(shù)并使用


前言:

由前面的章節(jié)學習,我們已經(jīng)了解了進程狀態(tài),進程終止以及進程等待,今天,我們學習進程替換。進程替換我們從如下幾個點開始介紹,第一,直接看現(xiàn)象,第二,解釋原理,第三,將代碼改成多線程版本,第四,使用所有的替換函數(shù),認識參數(shù)的含義。

廢話不多說,直接進入主題。


1 直接看代碼和現(xiàn)象

我們使用一段代碼進入到進程替換:

int main()
{printf("test begin...\n");	execl("/usr/bin/ls","-l",NULL);printf("test end...\n");	return 0;
}

根據(jù)現(xiàn)象,我們可以看到,第二個printf是沒有被執(zhí)行的,但是第一個被執(zhí)行了,而我們使用到的函數(shù),叫做進程替換函數(shù),它一共有6種,本質上我們理解了其中的2 - 3個,我們就會使用全部的了。我們不妨使用man手冊查看一下:

輸入:

man exec

從文檔里面我們可以看到進程替換的函數(shù)版本有這么多個,每個函數(shù)都有返回值,但是呢我們不必在意返回值,因為通過現(xiàn)象,我們看到了執(zhí)行進程替換函數(shù)之后的代碼都失效了,所以返回值即使接受了,也沒有用處。?

關心的情況只有一種,就是進程替換失敗,但是這種情況十分的少見,我們就自然而然的給忽略了。


2 解釋原理

首先我們要清楚一個問題,進程替換的全名不是進程替換,替換的不是進程,是程序,所以在進程程序替換的這個過程,本質上是沒有創(chuàng)建新的進程的。

第一個點:進程程序替換中是沒有創(chuàng)建新進程的,無非是程序替換了PCB里面原來的數(shù)據(jù)。這里我們不妨設想一個點,如果PCB里面是自己替換自己的多沒意思,如果.cpp文件里的PCB可以被Java替換,shell腳本替換,豈不美哉?

第二個點,exec函數(shù)的作用是什么?

exec函數(shù)本質是一個加載函數(shù),因為有了exec函數(shù),在Linux中就可以將程序加載進去,因為進程程序替換的本質就是將不同的程序加載到內(nèi)存里面,加載靠的就是exec*函數(shù)。


3 將代碼改成多進程版本

將代碼改成多線程版本,我們要做的事就是,父進程創(chuàng)建子進程,創(chuàng)建了之后,子進程執(zhí)行被替換的程序,父進程只需要等待多個子進程就可以了。

此時,子進程的作用就有了兩個,一個是執(zhí)行父進程的代碼部分,一個是讓子進程執(zhí)行一個全新的程序。

int main()
{printf("testexec ... begin!\n");pid_t id = fork();if (id == 0){printf("child pid: %d\n", getpid());//childexecl("/usr/bin/ls", "ls", "-l", NULL);exit(1);}int status = 0;pid_t rid = waitpid(id, &status, 0);if (rid > 0){printf("father wait success, child exit code: %d\n", WEXITSTATUS(status));}printf("testexec ... end!\n");return 0;
}

該程序創(chuàng)建了一個子進程,子進程實現(xiàn)execl,如果執(zhí)行失敗,也就是替換失敗,就走exit,程序直接退出,退出碼為1,此時父進程只需要等待即可:

以上是現(xiàn)象,今天的重點都不是前三個,直接進入第四個。


4 認識所有函數(shù)并使用

所有的函數(shù)一共有execl execlp execle execv execvp execvpe,不難發(fā)現(xiàn),拿命令行參數(shù)進行舉例的話,選項一共有l(wèi) p e v。

由參數(shù),我們可以看到有pathname 和file,我們第一個使用的pathname即路徑名,我們要從哪里執(zhí)行程序,得通過該路徑告訴它,file同理,就是文件名,那么對于execl,代表的就是列表,也就是在命令行中我們?nèi)绾螆?zhí)行,在該函數(shù)里面就怎么書寫即可。

拿這個舉例:

execl("/usr/bin/ls","ls"."-l",NULL);

因為有l(wèi),所以我們要將平常執(zhí)行l(wèi)s命令的時候,如何執(zhí)行的給列出來,這個參數(shù)不是固定,所以我們可以執(zhí)行很多,ls -l -a -n都是可以的,但是注意點是最后的參數(shù)一定要是NULL,代表結束。

第二個函數(shù):

execv,這里面的v代表的是vector,C++中的順序表,所以我們看execv的參數(shù)是[],也就是我們應該這樣干:

int main()
{char* const argv[] ={(char*)"ls",(char*)"-l",(char*)"-a",(char*)"--color",NULL};execv("/usr/bin/ls", argv);return 0;
}

但是注意點是,最后結尾的仍然要是NULL,這里的強轉char*不是很必要,看自己的版本是否會進行報錯吧。

對于execvp:

p代表的是PATH,也就是環(huán)境變量,用戶可以不用傳對應的路徑,但是要傳對應的文件,就像:

int main()
{char* const argv[] ={(char*)"ls",(char*)"-l",(char*)"-a",(char*)"--color",NULL};//execv("/usr/bin/ls", argv);execvp("ls",argv);return 0;
}

那么現(xiàn)在關于execlp就應該不用介紹了吧?l,list出來命令行怎么寫的即可,p我們傳對應的文件名即可。

現(xiàn)在還沒介紹的就只有e了,e多好理解,environment,環(huán)境變量嘛不就是,當然了,因為父進程本身就有環(huán)境變量,子進程哪里用得著擔心我沒有環(huán)境變量啥的,根本不擔心:

使用這里就不介紹了,同理即可。

本文是非常粗略的介紹了一下進程程序替換,很多細節(jié)沒有介紹到,博主會在后面全部重新翻新的!!


感謝閱讀!

http://m.risenshineclean.com/news/59288.html

相關文章:

  • 如何做直播網(wǎng)站百度用戶服務中心人工24小時電話
  • 網(wǎng)站廣告推廣公司鄭州seo詢搜點網(wǎng)絡效果佳
  • 中國建設招標工程網(wǎng)站百度關鍵詞優(yōu)化多少錢一年
  • 做網(wǎng)站費用上海重慶百度推廣關鍵詞優(yōu)化
  • 做網(wǎng)站建網(wǎng)站大搜推廣
  • 提升網(wǎng)站權重嗎網(wǎng)頁設計圖片
  • 渭南建站打開免費百度啊
  • 流量套餐網(wǎng)站網(wǎng)站關鍵詞免費優(yōu)化
  • 東莞市住房和城鄉(xiāng)建設廳網(wǎng)站首頁站長工具域名解析
  • 有哪些網(wǎng)站能夠免費找到素材免費seo教程資源
  • 廈門做網(wǎng)站建設寧波seo軟件
  • 百度做網(wǎng)站搜索靠前百度電話
  • 團購鮮花的網(wǎng)站建設培訓機構管理系統(tǒng)
  • 如何網(wǎng)站做淘客海南網(wǎng)站設計
  • 網(wǎng)站建設服務版權歸誰2022網(wǎng)站seo
  • 汶上1500元網(wǎng)站建設88個seo網(wǎng)站優(yōu)化基礎知識點
  • 學院 網(wǎng)站 兩學一做深圳網(wǎng)站seo外包公司哪家好
  • 網(wǎng)站工作室 需要什么手續(xù)新媒體營銷推廣方案
  • 512 做網(wǎng)站有做網(wǎng)站的嗎
  • 常見的企業(yè)網(wǎng)站有哪些百度店鋪怎么開通
  • 網(wǎng)站開發(fā) 實訓 報告c++培訓班學費一般多少
  • 河南最新任命12個廳級360優(yōu)化大師官方下載手機
  • 建設境外網(wǎng)站推廣軟文范文800字
  • 柳城網(wǎng)站建設官網(wǎng)優(yōu)化哪家專業(yè)
  • 做威客有什么靠譜網(wǎng)站2022最好的百度seo
  • 出口貿(mào)易網(wǎng)站廣告營銷的經(jīng)典案例
  • 網(wǎng)站建設的售后百度關鍵詞網(wǎng)站排名優(yōu)化軟件
  • 公司網(wǎng)站制作設上海網(wǎng)站制作公司
  • 網(wǎng)站開發(fā)畢設文獻網(wǎng)絡營銷swot分析
  • 網(wǎng)站后臺php開發(fā)教程seo手機關鍵詞排行推廣