Ben SMTP üzerinden bir e-posta göndermek için bir alt sürecini başlatmak için pcntl_fork kullanıyorum.
Alt süreç e-posta göndermek için PEAR Posta paketi kullanır, ama uzak sunucu sadece sonsuza kadar bağımsız php.ini içinde herhangi bir zaman sınırı, bir yanıt bekliyor çalışır sürecini yanıt vermezse sorun.
Bu etrafında ben hala çalışıyorsa eğer çocuk süreç öldürür 30 saniye sonra bir fonksiyonu tetiklemek için pcntl_alarm fonksiyonunu kullanarak ediyorum almak için.
function handlesig($sig) {
global $pid,$node,$resend;
posix_kill($pid,SIGKILL);
mysql_query("insert into log (event) values ('Timed out!')");
}
Ama çocuk süreci öldürür zaman sistemde bir feshedilmiş süreci ile sol.
Ben hala (bağlantı bitirmek asla çünkü) bağlantısı beklemeden ölmek çocuk sürecini zorlayacaktır ve feshedilmiş süreçlerin birikmesini önlemek olacaktır kullanmanız gereken farklı bir sinyal var mı?