Heim >php教程 >php手册 >PHP daemon(使用pcntl_fork派生子进程后退出父进程)

PHP daemon(使用pcntl_fork派生子进程后退出父进程)

WBOY
WBOYOriginal
2016-06-06 19:37:571620Durchsuche

使用pcntl_fork派生子进程后退出父进程 无 ?phpfunction daemon(){ $pid = pcntl_fork(); if ($pid == -1) { exit(1); } elseif ($pid 0) { exit(0); } else { posix_setsid(); umask(0); chdir('/'); fclose(STDOUT); fclose(STDERR); $pid = pcntl_fork();

使用pcntl_fork派生子进程后退出父进程
<?php

function daemon()
{
    $pid = pcntl_fork();

    if ($pid == -1)
    {
        exit(1);
    }
    elseif ($pid > 0)
    {
        exit(0);
    }
    else
    {
        posix_setsid();
        umask(0);
        chdir(&#39;/&#39;);
        fclose(STDOUT);
        fclose(STDERR);

        $pid = pcntl_fork();

        if ($pid == -1)
        {
            exit(1);
        }
        elseif ($pid > 0)
        {
            exit(0);
        }
        else
        {
            unset($pid);
        }

    }
}

function job()
{
    // your job here
}

daemon();

while (true)
{
    job();
    sleep(1);
}
Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Vorheriger Artikel:PHP5.5 SplStackNächster Artikel:PHP判断域名过期时间源码