Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: czas zakonczenia ajaxowego skryptu
Forum PHP.pl > Forum > XML, AJAX
elmozaur
Witam.
problem mam nastepujacy:
Jest zadanie ktore trzeba wykonac na PHPowej bardzo duzej tablicy.
Ze wzgledu na ograniczenia calosc zadania rozbita zostala na czesci
ilosc czesci to zmienna steps a aktualnie wykonywany fragment to offset.

inicjacja wyglada tak:
  1. <script type="text/javascript">
  2. while(offset < steps)
  3. {
  4. obliczanie (dane, offset, steps, zapis);
  5. }


wszystko fajnie dziala i sie zapisuje tylko chodzi mi o kwestie prezentacji. Firebugiem sprawdzam czasy wykonywania skryptów i czasem wyglada to tak:(dla uproszczenia podaje 8)
  1. 1:--
  2. 2:---
  3. 3:----
  4. 4:-----
  5. 5:------
  6. 6:-------
  7. 7:----------
  8. 8:--------

Co sie okazuje: watek nr 7 zakonczyl dzialanie po zakonczeniu ostatniego skryptu.
Pytania:
- jak sprawdzic czy wszystkie skrypty sie juz wykonaly ?
- jak zrobic aby skrypt wykonywal sie 1 po drugim?

za wszelkie sugestie z gory dziekuje

pozdrawiam
Grzegorz
trucksweb
nie bardzo wiem co masz na mysli, ja zrobilbym to tak.
mam tablice:
array[1..n][...]

i lece sobie petla foreach po jej indeksach -zapisuje $step, $offset. jak dojdzie do konca zawartosci indexa-tzn. np. wykona poprawny zapis do bazy, inkrementuje zmienna $step jesli nie to tworze moze inna tablice do ktorej zapisuje dane o bledach w indeksie.

?
elmozaur
oczywiscie masz racje. Ale zobacz jak ja to mam:
petla while odpala np 100 zapytan ajaxowych.
i moj problem jest taki ze nie wiem jak przekazywac informacje pomiedzy tymi (teoretycznie niezaleznymi) watkami.
trucksweb
no jak odpalasz ajaxa to mozesz mu przekazac te zmienne czy to urlem czy postem zalezy jak to wywolujesz. nie widze tu problemu.

ew. zapis do bazy kolejki ?
everth
Jeśli chcesz wyświetlić tabelę w określonej kolejności to podziel wyświetlanie na dwa etapy - poczekalnię i właściwą tabelę. Najpierw odpowiedzi ajaxowe trafiają do poczekalni która sprawdza czy indeks właściwej tabeli jest ciągły z offsetem odpowiedzi. Jeśli tak to przekazuje wyniki do właściwej tabeli. W przeciwnym razie zatrzymuje partię danych i oczekuje na odpowiedź następnego żądania. Przy odrobinie pracy możesz dodać obsługę błędów i oznaczać partie tablicy co do których żądanie się nie wykonało jako błędne.
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.