>Обычно происходит так: браузер ждет окончания данных от веб-сервера, веб-сервер ждет завершения >скрипта-родителя, родитель ждет завершения потомка. Если же надо отвязать потомка от >родителя, то есть произвести демонизацию, то следует в потомке закрыть дескрипторы >стандартного ввода/вывода(STDIN, STDOUT,STDERR они же 0,1,2) и вызвать setsid для отвязывания >от терминала(и родителя). Есть ли в php такие возможности я не >в курсе. Более подробно о демонизации можно глянуть, например, здесь http://www.enderunix.org/documents/eng/daemon.php >ну или гугл поспрашивать. Спасибо за инфу, действительно в обычном случае (cgi) так и есть и оно работает. А тут закрыть STDOUT не получается. Наверное всётаки нужно делать чайлдовую рутину отдельным скриптом и пускать через exec("nohup ..."), чтоб апач не форкался. А жаль, удобнее было б всё в одном скрипте иметь.
|