|
ru.cgi.perl- RU.CGI.PERL ------------------------------------------------------------------ From : Dmitry Chertischev 2:5020/400 21 Nov 2001 16:24:57 To : All Subject : Вопрос про fork() --------------------------------------------------------------------------------
.
Hужно было написать CGI-скрипт, который бы отправлял письма на кучу
адресов. При этом его работа занимает кучу времени. Hужно, чтобы скрипт
сказал в броузер что-то типа "Рассылка в процессе", а сам бы занялся
собсвтенно рассылкой.
Я сделал так:
if (!fork()) {
eval {
# делаем долгую работу, т.е. рассылаем почту
}
} else {
print qq^<br><p align="center">Рассылка в процессе...</p>^;
}
Все работает отлично: скрипт говорит "Рассылка в процессе..." и
рассылает почту. Hо при этом броузер держит соединение с веб-сервером и
заканчивает соединение только после того как скрипт закончит рассылку
писем. При этом, если нажать в броузере ESC, то броузер разрывает
соединение, а скрипт при этом продолжает работу, что в принципе и нужно.
Как бы сделать, что после вывода "Рассылка в процессе..." броузер сразу
бы закрывал соединение?
--- ifmail v.2.15dev5
* Origin: Demos online service (2:5020/400)
Вернуться к списку тем, сортированных по: возрастание даты уменьшение даты тема автор
Архивное /ru.cgi.perl/117633f3ddb2b.html, оценка из 5, голосов 10
|