|
ru.cgi.perl- RU.CGI.PERL ------------------------------------------------------------------ From : Leonid Nikolaev (nikonor) 2:5020/52 22 Nov 2001 16:19:56 To : All Subject : Re: =?iso-8859-5?b?98/Q0s/TINDSzw==?= fork() --------------------------------------------------------------------------------
Ситуация такая, что надо закрыть сигналы SIGINT,SIGTREM а может и еще
какие, смотрет надо. Видимо это можно сделать
$SIG{INT}=undef;
> Hужно было написать CGI-скрипт, который бы отправлял письма на кучу
> адресов. ╗ри этом его работа занимает кучу времени. Hужно, чтобы скрипт
> сказал в броузер что-то типа "Рассылка в процессе", а сам бы занялся
> собсвтенно рассылкой.
>
> ╦ сделал так:
> if (!fork()) {
> eval {
> # делаем долгую работу, т.е. рассылаем почту
> }
> } else {
> print qq^<br><p align="center">Рассылка в процессе...</p>^;
> }
>
> Все работает отлично: скрипт говорит "Рассылка в процессе..." и
> рассылает почту. Hо при этом броузер держит соединение с веб-сервером и
> заканчивает соединение только после того как скрипт закончит рассылку
> писем. ╗ри этом, если нажать в броузере ESC, то броузер разрывает
> соединение, а скрипт при этом продолжает работу, что в принципе и нужно.
>
> Шак бы сделать, что после вывода "Рассылка в процессе..." броузер сразу
> бы закрывал соединение?
>
--
Best regards,
Leonid Nikolaev, software engineer
Oil Trade Company, Moscow, +7-095-737-5357
--- Gnus/5.09 (Gnus v5.9.0) Emacs/21.1
* Origin: Zenon N.S.P. news server (2:5020/52.0)
бЕПМСРЭЯЪ Й ЯОХЯЙС РЕЛ, ЯНПРХПНБЮММШУ ОН: БНГПЮЯРЮМХЕ ДЮРШ СЛЕМЭЬЕМХЕ ДЮРШ РЕЛЮ ЮБРНП
юПУХБМНЕ /ru.cgi.perl/683004c4752b4.html, НЖЕМЙЮ ХГ 5, ЦНКНЯНБ 10
|