Estoy tratando de comprobar si un proceso que ya está en marcha mediante el uso de un archivo temporal demo.lock:Verificando un proceso php ya se está ejecutando
demo.php:
<?php
$active=file_exists('demo.lock');
if ($active)
{
echo 'process already running';
}
else
{
file_put_contents ('demo.lock', 'demo');
sleep(10); //do some job
unlink ('demo.lock');
echo 'job done';
}
?>
sin embargo, doesn Parece que funciona: si abro demo.php dos veces, siempre se muestra "trabajo hecho", ¿tal vez porque considera que es el mismo proceso? ¿Hay alguna forma de hacerlo? También probé con getmypid() con resultados similares.
Gracias
yo sugeriría que utiliza un mutex llamado así por una cosa así, pero no sabe si los que están disponibles en php .. también –
¿Cuál es tu sistema operativo? – zneak
Lo he intentado tanto en una Windows como en una máquina Linux, con los mismos resultados – Borgtex