Ejecutar procesos de fondo en php
muchas aplicaciones web requieren realizar tareas de consumo de tiempo, como la copia del directorio. Para mejorar la experiencia del usuario, es deseable ejecutar estas tareas en segundo plano sin interrumpir la interfaz de usuario.
Ejecución de procesos en segundo plano en php:
en PHP, ejecutando procesos en El fondo puede ser un desafío. Sin embargo, para los entornos de Linux, una solución común es usar la función EXEC:
exec(sprintf("%s > %s 2>&1 & echo $! >> %s", $cmd, $outputfile, $pidfile));
Este comando logra el siguiente:
Monitoreo del proceso:
para monitorear el progreso del proceso en segundo plano, se puede usar una función de ayuda:function isrunning ($ pid) { intentar{ $ result = shell_exec (sprintf ("ps %d", $ pid)); if (count (preg_split ("/\ n/", $ resultado))> 2) { devolver verdadero; } } catch (excepción $ e) {} devolver falso; }
function isRunning($pid){ try{ $result = shell_exec(sprintf("ps %d", $pid)); if( count(preg_split("/\n/", $result)) > 2){ return true; } }catch(Exception $e){} return false; }Esta función le permite verificar si el proceso con el PID especificado aún se está ejecutando, según la salida del comando PS.
Descargo de responsabilidad: Todos los recursos proporcionados provienen en parte de Internet. Si existe alguna infracción de sus derechos de autor u otros derechos e intereses, explique los motivos detallados y proporcione pruebas de los derechos de autor o derechos e intereses y luego envíelos al correo electrónico: [email protected]. Lo manejaremos por usted lo antes posible.
Copyright© 2022 湘ICP备2022001581号-3