亚洲综合原千岁中文字幕_国产精品99久久久久久久vr_无码人妻aⅴ一区二区三区浪潮_成人h动漫精品一区二区三

主頁 > 知識庫 > 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文件作用的相關信息資訊供網民參考!
  • 推薦文章
    精品在线免费播放| 日本久久久久久久 97久久精品一区二区三区 狠狠色噜噜狠狠狠狠97 日日干综合 五月天婷婷在线观看高清 九色福利视频 | 国产精品自拍在线观看| 青青久在线视频| 欧美激情伊人| 国产成人精品一区二区视频| 国产一区二区精品| 黄视频网站在线免费观看| 日韩专区亚洲综合久久| 久久久成人影院| 999久久久免费精品国产牛牛| 国产极品白嫩美女在线观看看| 国产一区精品| 美女被草网站| 黄视频网站在线免费观看| 国产不卡在线播放| 国产激情一区二区三区| 国产不卡在线看| 美女免费精品视频在线观看| 99热精品一区| 高清一级片| 精品久久久久久中文字幕2017| 成人免费网站视频ww| 青草国产在线| 欧美夜夜骑 青草视频在线观看完整版 久久精品99无色码中文字幕 欧美日韩一区二区在线观看视频 欧美中文字幕在线视频 www.99精品 香蕉视频久久 | 免费国产在线观看| 九九免费高清在线观看视频| 欧美一级视频免费| 精品国产一区二区三区久| 久久99爰这里有精品国产| 欧美一级视| 青青青草视频在线观看| 一级女性全黄久久生活片| 国产精品免费久久| 九九九在线视频| 四虎影视久久| 精品国产一区二区三区久| 国产91精品一区| 欧美另类videosbestsex| 日日夜人人澡人人澡人人看免| 午夜在线亚洲| 国产亚洲精品成人a在线| 日韩欧美一二三区| 九九热精品免费观看| 久久国产一久久高清| 欧美另类videosbestsex久久| 青青青草影院| 国产国产人免费视频成69堂| 四虎影视库国产精品一区| 91麻豆高清国产在线播放| 日韩专区在线播放| 免费的黄色小视频| 精品国产三级a| 久久国产一久久高清| 中文字幕一区二区三区精彩视频 | 日韩欧美一二三区| 精品国产一区二区三区久久久狼| 国产a视频| 日本免费区| 国产麻豆精品hdvideoss| 国产一级生活片| 精品视频在线观看免费| 日韩在线观看免费| 四虎影视久久| 91麻豆精品国产自产在线观看一区| 九九免费精品视频| 精品在线观看国产| 深夜做爰性大片中文| 国产精品自拍在线| 可以免费看毛片的网站| 国产精品1024永久免费视频 | 国产不卡精品一区二区三区| 日韩免费片| 精品国产三级a∨在线观看| 一级女人毛片人一女人| 国产伦久视频免费观看 视频| 日本免费区| 91麻豆国产级在线| 97视频免费在线| 国产伦理精品| 免费毛片播放| 亚久久伊人精品青青草原2020| 日韩在线观看免费| 日韩在线观看视频网站| 久久精品大片| 麻豆网站在线免费观看| 九九九在线视频| 日本久久久久久久 97久久精品一区二区三区 狠狠色噜噜狠狠狠狠97 日日干综合 五月天婷婷在线观看高清 九色福利视频 | 国产不卡高清在线观看视频| 日本特黄特色aaa大片免费| 国产成人精品综合久久久| 999精品视频在线| 日本特黄特色aaa大片免费| 国产一区国产二区国产三区| 午夜激情视频在线观看| 国产网站免费视频| 国产伦精品一区二区三区在线观看| 欧美爱色| 久久国产一久久高清| 在线观看成人网 | 可以免费看毛片的网站| 国产美女在线观看| 麻豆网站在线看| 欧美一区二区三区性| 一级女人毛片人一女人| 日本在线www| 精品国产三级a| 韩国妈妈的朋友在线播放| 精品国产亚洲人成在线| 日本久久久久久久 97久久精品一区二区三区 狠狠色噜噜狠狠狠狠97 日日干综合 五月天婷婷在线观看高清 九色福利视频 | 成人免费一级毛片在线播放视频| 九九免费高清在线观看视频| 免费一级片在线观看| 久久99这里只有精品国产| 免费国产在线观看| 国产一区精品| 精品久久久久久中文字幕2017| 亚欧乱色一区二区三区| 精品视频在线观看一区二区 | 久久国产影院| 欧美激情一区二区三区中文字幕| 精品视频在线观看一区二区 | 黄色免费三级| 日本伦理黄色大片在线观看网站| 免费一级片在线观看| 精品视频在线观看视频免费视频| 成人免费观看的视频黄页| 91麻豆精品国产高清在线| 黄视频网站免费看| 国产成人精品综合久久久| 国产一区二区高清视频| 精品国产香蕉在线播出| 日韩欧美一及在线播放| 国产精品自拍在线观看| 日本伦理黄色大片在线观看网站| 国产原创视频在线| 99久久精品国产高清一区二区 | 韩国三级香港三级日本三级la| 高清一级做a爱过程不卡视频| 国产91素人搭讪系列天堂| 欧美国产日韩久久久| 欧美日本二区| 99色播| 国产一区精品| 国产网站免费观看| 欧美国产日韩在线| 毛片高清| 国产亚洲免费观看| 亚洲女初尝黑人巨高清在线观看| 国产精品自拍亚洲| 精品国产一区二区三区久久久蜜臀 | 精品毛片视频| 天天做日日爱夜夜爽| 99热精品在线| 国产91丝袜在线播放0| 99久久视频| 韩国三级视频网站| 成人a级高清视频在线观看| 日本特黄特黄aaaaa大片| 亚洲女人国产香蕉久久精品| 欧美激情一区二区三区视频 | 国产麻豆精品高清在线播放| 人人干人人插| 欧美夜夜骑 青草视频在线观看完整版 久久精品99无色码中文字幕 欧美日韩一区二区在线观看视频 欧美中文字幕在线视频 www.99精品 香蕉视频久久 | 久久精品人人做人人爽97| 国产91精品一区| 日韩女人做爰大片| 欧美大片a一级毛片视频| 国产不卡高清| 欧美另类videosbestsex高清| 日韩中文字幕一区二区不卡| 国产不卡在线观看| 色综合久久久久综合体桃花网| 欧美大片aaaa一级毛片| 九九久久国产精品大片| 99久久精品国产高清一区二区| 国产美女在线一区二区三区| 九九干| 欧美夜夜骑 青草视频在线观看完整版 久久精品99无色码中文字幕 欧美日韩一区二区在线观看视频 欧美中文字幕在线视频 www.99精品 香蕉视频久久 | 国产伦理精品| 色综合久久久久综合体桃花网| 国产网站在线| 午夜精品国产自在现线拍| 成人高清视频免费观看| 日韩一级黄色片| 国产一级生活片| 欧美1区2区3区| 九九干| 国产亚洲免费观看| 好男人天堂网 久久精品国产这里是免费 国产精品成人一区二区 男人天堂网2021 男人的天堂在线观看 丁香六月综合激情 | 国产91丝袜高跟系列| 可以免费在线看黄的网站| 日韩一级黄色| 欧美爱色| 99色视频在线| 日日夜夜婷婷| 青青青草视频在线观看| 欧美大片一区| 青青久久国产成人免费网站| 99久久精品国产免费|