91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

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

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

怎么強制PHP命令行腳本單進程運行

發布時間:2021-09-01 15:39:19 來源:億速云 閱讀:117 作者:chen 欄目:開發技術

這篇文章主要介紹“怎么強制PHP命令行腳本單進程運行”,在日常操作中,相信很多人在怎么強制PHP命令行腳本單進程運行問題上存在疑惑,小編查閱了各式資料,整理出簡單好用的操作方法,希望對大家解答”怎么強制PHP命令行腳本單進程運行”的疑惑有所幫助!接下來,請跟著小編一起來學習吧!

復制代碼 代碼如下:


 /**
  * 保證單進程
  *
  * @param string $processName 進程名
  * @param string $pidFile 進程文件路徑
  * @return boolean 是否繼續執行當前進程
  */
 function singleProcess($processName, $pidFile)
 {
  if (file_exists($pidFile) && $fp = @fopen($pidFile,"rb"))
  {
   flock($fp, LOCK_SH);
   $last_pid = fread($fp, filesize($pidFile));
   fclose($fp);

   if (!empty($last_pid))
   {
    $command = exec("/bin/ps -p $last_pid -o command=");

    if ($command == $processName)
    {
     return false;
    }
   }
  }

  $cur_pid = posix_getpid();

  if ($fp = @fopen($pidFile, "wb"))
  {
   fputs($fp, $cur_pid);
   ftruncate($fp, strlen($cur_pid));
   fclose($fp);

   return true;
  }
  else
  {
   return false;
  }
 }

 /**
  * 獲取當前進程對應的Command
  *
  * @return string 命令及其參數
  */
 function getCurrentCommand()
 {
  $pid     = posix_getpid();
  $command = exec("/bin/ps -p $pid -o command=");

  return $command;
 }

使用方法:

復制代碼 代碼如下:


if (singleProcess(getCurrentCommand(), 'path/to/script.pid'))
{
    // code goes here
}
else
{
 exit("Sorry, this script file has already been running ...\n");
}

到此,關于“怎么強制PHP命令行腳本單進程運行”的學習就結束了,希望能夠解決大家的疑惑。理論與實踐的搭配能更好的幫助大家學習,快去試試吧!若想繼續學習更多相關知識,請繼續關注億速云網站,小編會繼續努力為大家帶來更多實用的文章!

向AI問一下細節

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

php
AI

钟祥市| 靖江市| 崇州市| 登封市| 托克逊县| 利辛县| 海晏县| 平陆县| 尼玛县| 鄂伦春自治旗| 彰化县| 凤山县| 金华市| 镇赉县| 东乌珠穆沁旗| 峨山| 成都市| 安国市| 正蓝旗| 禄劝| 南陵县| 定边县| 鄂伦春自治旗| 安图县| 大英县| 新蔡县| 龙南县| 扶余县| 远安县| 鹤岗市| 长春市| 类乌齐县| 罗甸县| 平度市| 丰镇市| 榆社县| 霍城县| 江阴市| 桃源县| 崇明县| 温州市|