Сессии

Статус
В этой теме нельзя размещать новые ответы.

Denis5

Постоялец
Регистрация
2 Сен 2008
Сообщения
98
Реакции
23
Запускаю 10-ти секундный скрипт.
Открываю новое окно, запускаю 1 секундный скрипт.
Пока первый не завершится, второй не начинает выполняться.
Почему?
 
Попробуй 10-й скрипт запустить в одном браузере а 1-ы в другом .
И результат сюда тащи.
 
Так работает.

У меня через яваскрипт уходит на выполнение 1-й скрипт(по времени долгий)
Потом вторым чекаю процесс выполнения первого через переменные в сессии.
А не выходит, второй виснет, пока первый не выполниться.

Что делать? ума не приложу.
 
А что мешает через ajax запустить?
 
Это "фича" браузера такая, ничего не поделаешь.

Теперь по поводу сессий. Если второй скрипт изменит что-то в сессии, первый (долгий) перезапишет весь результат работы 2го.

В данном случае +1 к аяксу.
 
PHP:
ignore_user_abort(true);
и отфоркаться от основного скрипта, т.е. чтоб 10-секундный скрипт тут же вернул результат в бровзер и типо завершился, выдав напоследок ключ, по которому можно проверять его состояние (другим скриптом). А основную работу выполнять в другом процессе, который с stdio и бровзером вообще никак не связан, но к которому может обратиться скрипт проверки состояния. Это если есть необходимость к нему обращаться, обычно проще посмотреть в файл или базу - и так определить, работает ли тот основной скрипт или уже отработал.
 
если вы используете в скрипте session_start(), то пока скрипт не завершится, либо не встретит session_write_close() - он не будет выполнять следующий от вас запрос.
 
Статус
В этой теме нельзя размещать новые ответы.
Назад
Сверху