Hosting de Calidad
  • Inicio
  • Precios y servicios
  • F.a.q y ayudas
  • Realizar pedido
  • Webs alojadas
  • Quienes somos
  • Foro HyD
  • Contacto

    Zona Dominios

    Entrar
    registro de dominios


    Zona Hosting

    Entrar
    alojamiento web


    5 Métodos de Pago
    Tarjeta de crédito
    Domiciliación
    Transferencia
    Soporte Epagado
    Soporte Paypal

    Liberalización .es

    Ver mas
    dominios .es


  •  
     
     
    Process Control Functions

    LXXXIV_ Process Control Functions

    Introducción

    Process Control support in PHP implements the Unix style of process creation, program execution, signal handling and process termination_ Process Control should not be enabled within a webserver environment and unexpected results may happen if any Process Control functions are used within a webserver environment_

    This documentation is intended to explain the general usage of each of the Process Control functions_ For detailed information about Unix process control you are encouraged to consult your systems documentation including fork(2), waitpid(2) and signal(2) or a comprehensive reference such as Advanced Programming in the UNIX Environment by W_ Richard Stevens (Addison_Wesley)_

    PCNTL now uses ticks as the signal handle callback mechanism, which is much faster than the previous mechanism_ This change follows the same semantics as using "user ticks"_ You use the declare() statement to specify the locations in your program where callbacks are allowed to occur_ This allows you to minimize the overhead of handling asynchronous events_ In the past, compiling PHP with pcntl enabled would always incur this overhead, whether or not your script actually used pcntl_

    There is one adjustment that all pcntl scripts prior to PHP 4_3_0 must make for them to work which is to either to use declare() on a section where you wish to allow callbacks or to just enable it across the entire script using the new global syntax of declare()_

    Nota: Esta extensión no está disponible en plataformas Windows

    Requerimientos

    No se necesitan bibliotecas externas para construir esta extensión

    Instalación

    Process Control support in PHP is not enabled by default_ You have to compile the CGI or CLI version of PHP with __enable_pcntl configuration option when compiling PHP to enable Process Control support_

    Nota: Currently, this module will not function on non_Unix platforms (Windows)_

    Configuración en tiempo de ejecución

    Esta extensión no tiene directivas de configuración en php_ini_

    Tipos de recursos

    Esta extensión no tiene ningún tipo de recurso definido_

    Constantes predefinidas

    The following list of signals are supported by the Process Control functions_ Please see your systems signal(7) man page for details of the default behavior of these signals_

    WNOHANG (integer)

    WUNTRACED (integer)

    SIG_IGN (integer)

    SIG_DFL (integer)

    SIG_ERR (integer)

    SIGHUP (integer)

    SIGINT (integer)

    SIGQUIT (integer)

    SIGILL (integer)

    SIGTRAP (integer)

    SIGABRT (integer)

    SIGIOT (integer)

    SIGBUS (integer)

    SIGFPE (integer)

    SIGKILL (integer)

    SIGUSR1 (integer)

    SIGSEGV (integer)

    SIGUSR2 (integer)

    SIGPIPE (integer)

    SIGALRM (integer)

    SIGTERM (integer)

    SIGSTKFLT (integer)

    SIGCLD (integer)

    SIGCHLD (integer)

    SIGCONT (integer)

    SIGSTOP (integer)

    SIGTSTP (integer)

    SIGTTIN (integer)

    SIGTTOU (integer)

    SIGURG (integer)

    SIGXCPU (integer)

    SIGXFSZ (integer)

    SIGVTALRM (integer)

    SIGPROF (integer)

    SIGWINCH (integer)

    SIGPOLL (integer)

    SIGIO (integer)

    SIGPWR (integer)

    SIGSYS (integer)

    SIGBABY (integer)

    Ejemplos

    This example forks off a daemon process with a signal handler_

    Ejemplo 1_ Process Control Example

    <?php
    declare(ticks=1);
    
    $pid = pcntl_fork();
    if ($pid == _1) {
         die("could not fork"); 
    } else if ($pid) {
         exit(); // we are the parent 
    } else {
         // we are the child
    }
    
    // detatch from the controlling terminal
    if (!posix_setsid()) {
        die("could not detach from terminal");
    }
    
    // setup signal handlers
    pcntl_signal(SIGTERM, "sig_handler");
    pcntl_signal(SIGHUP, "sig_handler");
    
    // loop forever performing tasks
    while(1) {
    
        // do something interesting here
    
    }
    
    function sig_handler($signo) {
    
         switch($signo) {
             case SIGTERM:
                 // handle shutdown tasks
                 exit;
                 break;
             case SIGHUP:
                 // handle restart tasks
                 break;
             default:
                 // handle all other signals
         }
    
    }
    
    ?>

    Ver también

    A look at the section about POSIX functions may be useful_

    Tabla de contenidos
    pcntl_exec __  Executes specified program in current process space
    pcntl_fork __ Forks the currently running process
    pcntl_signal __ Installs a signal handler
    pcntl_waitpid __ Waits on or returns the status of a forked child
    pcntl_wexitstatus __  Returns the return code of a terminated child
    pcntl_wifexited __  Returns TRUE if status code represents a successful exit
    pcntl_wifsignaled __  Returns TRUE if status code represents a termination due to a signal
    pcntl_wifstopped __  Returns TRUE if child process is currently stopped
    pcntl_wstopsig __  Returns the signal which caused the child to stop
    pcntl_wtermsig __  Returns the signal which caused the child to terminate
     
       



    registro de dominios | alojamiento web | hosting por publicidad

       

     

    Manual de linux Manual de apache Manual de php Manual de mysql Manual de SQL Manual del Plesk Como funciona Paypal Manual de html