Roo Postado Dezembro 9, 2010 Denunciar Share Postado Dezembro 9, 2010 (editado) Boa tarde amigos, gostaria de saber se o PHP possui treads, ou um scheduler, para agendar que uma rotina rode a cada 200 segundos, por exemplo... Se tiver, qual é o nome da função?Obrigado e uma ótima tarde! Editado Dezembro 9, 2010 por Roo Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 SK15 Postado Dezembro 9, 2010 Denunciar Share Postado Dezembro 9, 2010 Não, PHP não tem nada que faça isso nativamente ...Mas se combinar com outras linguagens como JavaScript ou com o servidor usando o Cron do Linux por exemplo é possível fazer isso :P Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Roo Postado Dezembro 9, 2010 Autor Denunciar Share Postado Dezembro 9, 2010 Não, PHP não tem nada que faça isso nativamente ...Mas se combinar com outras linguagens como JavaScript ou com o servidor usando o Cron do Linux por exemplo é possível fazer isso :PHummm, e no JavaScript como se chama a função que faria isso? Obrigado de novo! :) Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 GuerreiroDaLuz Postado Dezembro 9, 2010 Denunciar Share Postado Dezembro 9, 2010 Boa tarde amigos, gostaria de saber se o PHP possui treads, ou um scheduler, para agendar que uma rotina rode a cada 200 segundos, por exemplo... Se tiver, qual é o nome da função?Obrigado e uma ótima tarde!seria isso?$pid = pcntl_fork(); if ($pid == -1) { die('Erro ao lançar thread'); } else if ($pid) { // thread principal //aguardamos a thread child terminar pcntl_wait($status); echo "Processo child terminado\n"; exit(0); } else { //thread secundario //mudamos para um usuário não privilegiado posix_setuid(1000); posix_setgid(1000); //colocamos a thread para fazer algo, //ate que uma condição seja satisfeita e ela termine $i=0; while(true){ if (file_exists('/tmp/stop')){ echo "Terminado thread"; exit(0); } echo "Iteração : ". ++$i . "\n"; sleep(2); } }Créditos:AlexM Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Roo Postado Dezembro 9, 2010 Autor Denunciar Share Postado Dezembro 9, 2010 Boa tarde amigos, gostaria de saber se o PHP possui treads, ou um scheduler, para agendar que uma rotina rode a cada 200 segundos, por exemplo... Se tiver, qual é o nome da função?Obrigado e uma ótima tarde!seria isso?$pid = pcntl_fork(); if ($pid == -1) { die('Erro ao lançar thread'); } else if ($pid) { // thread principal //aguardamos a thread child terminar pcntl_wait($status); echo "Processo child terminado\n"; exit(0); } else { //thread secundario //mudamos para um usuário não privilegiado posix_setuid(1000); posix_setgid(1000); //colocamos a thread para fazer algo, //ate que uma condição seja satisfeita e ela termine $i=0; while(true){ if (file_exists('/tmp/stop')){ echo "Terminado thread"; exit(0); } echo "Iteração : ". ++$i . "\n"; sleep(2); } }Créditos:AlexMOi, desculpe mas sou novo em PHP e não entendi direito. Ali nesta função você não define um intervalo de tempo, né? Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 GuerreiroDaLuz Postado Dezembro 9, 2010 Denunciar Share Postado Dezembro 9, 2010 (editado) Oi, desculpe mas sou novo em PHP e não entendi direito. Ali nesta função você não define um intervalo de tempo, né?basicamente sim, mas essa função ai pode ser implementada, estude isso aqui: http://php.net/manual/en/book.pcntl.phpmas não entendo praticamente nada, apenas vi a referencia! :)abraço Editado Dezembro 9, 2010 por GuerreiroDaLuz Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Roo Postado Dezembro 9, 2010 Autor Denunciar Share Postado Dezembro 9, 2010 Oi, desculpe mas sou novo em PHP e não entendi direito. Ali nesta função você não define um intervalo de tempo, né?basicamente sim, mas essa função ai pode ser implementada, estude isso aqui: http://php.net/manual/en/book.pcntl.phpmas não entendo praticamente nada, apenas vi a referencia! :)abraçoBeleza cara, acho que é por aí sim! Obrigado! Citar Link para o comentário Compartilhar em outros sites More sharing options...
Pergunta
Roo
Boa tarde amigos, gostaria de saber se o PHP possui treads, ou um scheduler, para agendar que uma rotina rode a cada 200 segundos, por exemplo... Se tiver, qual é o nome da função?
Obrigado e uma ótima tarde!
Editado por RooLink para o comentário
Compartilhar em outros sites
6 respostass a esta questão
Posts Recomendados
Participe da discussão
Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.