Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> blokująca sesja
nospor
post
Post #1





Grupa: Moderatorzy
Postów: 36 557
Pomógł: 6315
Dołączył: 27.12.2004




Mam taki kod:
  1. //tutaj coś robie
  2.  
  3. //a teraz będą długie obliczenia, które będą trwały powiedzmy 30 sekund
  4. sleep(30);
  5. }

No i jest pewien problem - taki skrypt zablokuje mi sesje na 30 sekund, a co za tym idzie inne rządania z tej sesji będą również blokowane.

By uniknąć tego problemu, wystarczy dodać session_write_close
  1. //tutaj coś robie
  2.  
  3. //a teraz będą długie obliczenia, które będą trwały powiedzmy 30 sekund
  4. sleep(30);
  5. }

I już sesja mi nie będzie blokowana. No ale pojawia się kolejny problem, gdyż po tych 30 sekundach chciałbym znowu coś dopisać do sesji
  1. //tutaj coś robie
  2.  
  3. //a teraz będą długie obliczenia, które będą trwały powiedzmy 30 sekund
  4. sleep(30);
  5.  
  6. $_SESSION['cos tam'] = 'to się do sesji nie zapisze';
  7. }

Jednak do sesji już się nic nie zapisze.

Jedyne rozwiązanie jakie mi przychodzi do głowy to ponownie wystartować sesję
  1. //tutaj coś robie
  2.  
  3. //a teraz będą długie obliczenia, które będą trwały powiedzmy 30 sekund
  4. sleep(30);
  5.  
  6. $_SESSION['cos tam'] = 'to się już zapisze';
  7. }

Ale bardzo to rozwiązanie mi się nie podoba. Czy jest jakieś inne czy może to ponowne startowanie sesji w tym samym skrypcie jest ok?


--------------------

"Myśl, myśl, myśl..." - Kubuś Puchatek || "Manual, manual, manual..." - Kubuś Programista
"Szukaj, szukaj, szukaj..." - Kubuś Odkrywca || "Debuguj, debuguj, debuguj..." - Kubuś Developer

Go to the top of the page
+Quote Post

Posty w temacie


Reply to this topicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 21.08.2025 - 20:53