婷婷综合国产,91蜜桃婷婷狠狠久久综合9色 ,九九九九九精品,国产综合av

主頁 > 知識庫 > Linux下/var/run/目錄下的pid文件詳解及pid文件作用

Linux下/var/run/目錄下的pid文件詳解及pid文件作用

熱門標簽:電銷機器人加盟多少錢 貴陽400電話到哪里去辦理 4層電梯外呼控制系統設計 汨羅代理外呼系統 天津智能外呼系統排名 400電話申請找 網絡電話外呼系統撥號軟件 宿松高德地圖標注 申請400電話有什么用

先給大家介紹下Linux下/var/run/目錄下的pid文件,具體詳解如下所示:

linux系統中/var/run/目錄下的*.pid文件是一個文本文件,其內容只有一行,即某個進程的PID。.pid文件的作用是防止進程啟動多個副本,只有獲得特定pid文件(固定路徑和文件名)的寫入權限(F_WRLCK)的進程才能正常啟動并將自身的進程PID寫入該文件,其它同一程序的多余進程則自動退出。

編程實現:

 調用fcntl()系統調用設置指定的pid文件為F_WRLCK鎖狀態,如果鎖成功則寫入當前進程的PID,進程繼續往下執行;如果上鎖失敗則說明已經有同樣的進程在運行了,當前進程退出。

#define PID_FILE "/var/run/xxxx.pid"
int lock_file(int fd)
{
  struct flock fl;
  fl.l_type = F_WRLCK;
  fl.l_start = 0;
  fl.l_whence = SEEK_SET;
  fl.l_len = 0;
  return (fcntl(fd, F_SETLK, fl));
}
int alone_runnind(void)
{
  int fd;
  char buf[16];
  fd = open(PID_FILE, O_RDWR | O_CREAT, 0666);
  if (fd  0)
  {
    perror("open");
    exit(1);
  }
  if (lock_file(fd)  0)
  {
    if (errno == EACCESS || errno == EAGAIN)
    {
      close(fd);
      printf("alone runnind\n");
      return -1;
    }
    printf("can't lock %s: %s\n", PID_FILE, strerror(errno));
  }
  ftruncate(fd, 0);  //設置文件的大小為0
  sprintf(buf, "%ld", (long)getpid());
  write(fd, buf, strlen(buf) + 1);
  return 0;
}

需要注意:

1.程退出后該進程加的鎖自動失效;
2.進程關閉了該文件描述符fd,則加的鎖失效。(所以整個進程生命周期內不能關閉該fd);
3.鎖的狀態不會被子進程繼承,如果進程關閉則失效而不管子進程是否運行。

下面介紹下Linux下/var/run目錄下的pid文件作用

在Linux系統的目錄/var/run下面一般我們都會看到很多的*.pid文件。而且往往新安裝的程序在運行后也會在/var/run目錄下面產生自己的pid文件。那么這些pid文件有什么作用呢?它的內容又是什么呢?

(1) pid文件的內容:pid文件為文本文件,內容只有一行, 記錄了該進程的ID。

用cat命令可以看到。

(2) pid文件的作用:防止進程啟動多個副本。只有獲得pid文件(固定路徑固定文件名)寫入權限(F_WRLCK)的進程才能正常啟動并把自身的PID寫入該文件中。其它同一個程序的多余進程則自動退出。

(3) 編程技巧:

調用fcntl設置pid文件的鎖定F_SETLK狀態,其中鎖定的標志位F_WRLCK。

如果成功鎖定,則寫入進程當前PID,進程繼續往下執行。

如果鎖定不成功,說明已經有同樣的進程在運行了,當前進程結束退出。

lock.l_type = F_WRLCK;
 lock.l_whence = SEEK_SET;

 if (fcntl(fd, F_SETLK, lock)  0){
  //鎖定不成功, 退出......
 }
sprintf (buf, "%d\n", (int) pid);
 pidsize = strlen(buf);
 if ((tmp = write (fd, buf, pidsize)) != (int)pidsize){
  //寫入不成功, 退出......
 }

 (4) 一些注意事項:

i) 如果進程退出,則該進程加的鎖自動失效。
ii) 如果進程關閉了該文件描述符fd, 則加的鎖失效。(整個進程運行期間不能關閉此文件描述符)
iii) 鎖的狀態不會被子進程繼承。如果進程關閉則鎖失效而不管子進程是否在運行。

總結

以上所述是小編給大家介紹的Linux下/var/run/目錄下的pid文件詳解及pid文件作用,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回復大家的。在此也非常感謝大家對腳本之家網站的支持!

您可能感興趣的文章:
  • Linux下進程數量的限制pid_max的配置方法
  • Linux中怎么通過PID號找到對應的進程名及所在目錄方法
  • Linux/ubuntu 下安裝pyspider的過程
  • Linux pidof命令使用總結
  • linux根據pid獲取進程名和獲取進程pid(c語言獲取pid)
  • linux mysql 報錯:MYSQL:The server quit without updating PID file
  • 詳解linux系統下pid的取值范圍

標簽:海北 連云港 廣東 烏蘭察布 贛州 昌都 撫州 臨沂

巨人網絡通訊聲明:本文標題《Linux下/var/run/目錄下的pid文件詳解及pid文件作用》,本文關鍵詞  Linux,下,var,run,目,錄下,的,;如發現本文內容存在版權問題,煩請提供相關信息告之我們,我們將及時溝通與處理。本站內容系統采集于網絡,涉及言論、版權與本站無關。
  • 相關文章
  • 下面列出與本文章《Linux下/var/run/目錄下的pid文件詳解及pid文件作用》相關的同類信息!
  • 本頁收集關于Linux下/var/run/目錄下的pid文件詳解及pid文件作用的相關信息資訊供網民參考!
  • 推薦文章
    婷婷综合国产,91蜜桃婷婷狠狠久久综合9色 ,九九九九九精品,国产综合av
    成人av资源站| 狠狠色综合色综合网络| 亚洲r级在线视频| 99国产精品国产精品久久| 综合亚洲深深色噜噜狠狠网站| 高清不卡一二三区| 中文字幕在线一区二区三区| 国产电影一区二区三区| 中文字幕日本乱码精品影院| 在线观看日产精品| 日韩综合小视频| 国产欧美日韩在线视频| 亚洲激情校园春色| 欧美性生活影院| 日日夜夜精品视频免费 | 中文字幕中文字幕一区| 一本色道a无线码一区v| 香蕉加勒比综合久久| 制服.丝袜.亚洲.中文.综合| 国产成人亚洲综合a∨婷婷图片| 亚洲欧美日韩国产另类专区| 欧美电影免费观看高清完整版在线| 国产久卡久卡久卡久卡视频精品| 亚洲视频小说图片| 国产精品亲子伦对白| 亚洲图片你懂的| 欧美三级韩国三级日本一级| 美女尤物国产一区| 国产精品久久久久久久久免费桃花| 91久久精品国产91性色tv| 麻豆视频一区二区| 综合久久久久久| 日韩欧美精品三级| 一本一道久久a久久精品| 精品一区二区免费视频| 亚洲三级视频在线观看| 精品国产免费一区二区三区四区| 91国偷自产一区二区使用方法| 久久爱另类一区二区小说| 亚洲男人的天堂在线aⅴ视频| 亚洲成av人片一区二区三区| 欧美在线啊v一区| 精品亚洲成a人在线观看| 亚洲精品日产精品乱码不卡| 国产欧美一区二区精品性色超碰| 欧美日韩国产中文| 色婷婷久久综合| 国产99久久久国产精品潘金 | 一区二区三区精品视频在线| 久久人人97超碰com| 在线不卡中文字幕| 欧美性生活大片视频| 99视频超级精品| 国产成人亚洲综合色影视| 韩国毛片一区二区三区| 麻豆精品在线看| 久久机这里只有精品| 五月天激情小说综合| 亚洲天堂中文字幕| 欧美视频一区二| jlzzjlzz欧美大全| av一区二区三区四区| 成人av电影在线观看| 丰满亚洲少妇av| 成人一区二区视频| 91在线观看美女| 99re热视频这里只精品| 91视频.com| 欧美视频在线一区| 91精品国产色综合久久| 日韩欧美电影一区| 久久午夜老司机| 国产精品电影一区二区| 成人av在线影院| 日韩av网站在线观看| 日韩高清在线电影| 免费人成黄页网站在线一区二区| 三级不卡在线观看| 久久精品国产亚洲aⅴ| 国产一区二区日韩精品| 国产91综合网| 在线一区二区三区| 日韩午夜av一区| 国产欧美中文在线| 亚洲综合一区二区三区| 麻豆久久久久久久| 成人高清伦理免费影院在线观看| 91久久线看在观草草青青| 51精品视频一区二区三区| 国产日韩欧美一区二区三区乱码| 中文字幕一区在线观看视频| 亚洲国产精品一区二区久久| 国内成+人亚洲+欧美+综合在线| 国产白丝网站精品污在线入口| 色婷婷国产精品综合在线观看| 3atv在线一区二区三区| 国产女主播视频一区二区| 午夜免费欧美电影| 成人avav影音| 26uuu国产在线精品一区二区| 樱桃视频在线观看一区| 国产a区久久久| 日韩精品一区二区三区四区视频 | 中文字幕第一区二区| 亚洲一区二区欧美激情| 高清国产一区二区三区| 欧美一区二区成人6969| 亚洲另类在线制服丝袜| 成人午夜电影久久影院| 精品黑人一区二区三区久久| 亚洲一本大道在线| 99久久精品国产网站| 国产视频亚洲色图| 另类调教123区 | 日本精品免费观看高清观看| 日韩欧美一级二级三级久久久| 亚洲精品成人在线| 成人av电影在线观看| 久久久久国产免费免费| 青青草国产成人av片免费| 在线观看国产一区二区| 亚洲欧洲国产日韩| jlzzjlzz欧美大全| 国产精品久久久久一区二区三区| 国产精品91xxx| 26uuu欧美| 国产在线精品一区在线观看麻豆| 欧美美女黄视频| 亚洲国产婷婷综合在线精品| 色老头久久综合| 亚洲三级理论片| 色猫猫国产区一区二在线视频| 亚洲免费观看高清| 欧美视频一区二区在线观看| 午夜免费久久看| 欧美精品少妇一区二区三区| 视频一区二区中文字幕| 精品日韩欧美一区二区| 国产精品中文欧美| 亚洲国产成人午夜在线一区| 成人aaaa免费全部观看| 怡红院av一区二区三区| 欧美日韩一级片在线观看| 亚洲国产色一区| 91精品国产手机| 狠狠色丁香婷婷综合| 国产精品美女久久久久久久 | 成人福利视频网站| 国产精品久久久一本精品 | 精品福利一区二区三区免费视频| 精品久久一区二区三区| 天天影视涩香欲综合网| 欧美一级免费大片| 国产目拍亚洲精品99久久精品| 伦理电影国产精品| 国产亚洲综合av| 欧美精品在线一区二区| 亚洲综合区在线| 6080yy午夜一二三区久久| 国产真实精品久久二三区| 国产精品久久久久久亚洲毛片 | 欧美日韩一级黄| 国产一区二区0| 一区二区三区在线视频观看 | 色综合久久中文字幕| 亚洲成人7777| 国产免费成人在线视频| 欧美在线免费观看视频| 国产在线观看一区二区| 亚洲宅男天堂在线观看无病毒| 精品日韩一区二区| 欧美自拍偷拍一区| 国产成人在线视频免费播放| 午夜一区二区三区视频| 国产精品高潮呻吟久久| 日韩久久久精品| 在线亚洲一区二区| 国产精品66部| 男女激情视频一区| 亚洲一区二区影院| 国产精品国产三级国产a | 一区二区三区在线观看欧美| 日韩欧美亚洲国产另类| 91成人免费电影| 国产jizzjizz一区二区| 日韩av中文字幕一区二区| 中文字幕制服丝袜一区二区三区| 日韩精品中午字幕| 在线看一区二区| 成人av网址在线| 精品亚洲免费视频| 蜜乳av一区二区| 亚洲成人你懂的| 亚洲人成精品久久久久久| 国产亚洲欧美中文| wwww国产精品欧美| 精品成人一区二区| 精品区一区二区| 欧美不卡在线视频| 日韩视频免费观看高清在线视频|