Multi-Threading??

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • Multi-Threading??

    Moinsen,

    hat von euch schon mal jemand Multi-threading im Zusammenhang mit PHP gebracht?

    Ich hab da folgendes Problem:

    Während das Script aus einer Datei liest, und in die Datenbank schreibt (Vorgang dauert ca. 20 Min), möchte ich den Status ausgeben...

    ...habe leider noch nichts über Mehrere Threads gefunden.

    Hat jemand 'ne Idee?

  • #2
    du könntest z.B. deine Zustandsanzeige entweder in ein extra Frame packen oder in kleinem Fenster aufrufen. An die Datei gibst du immer den Zustand und die läßt einen Balken hochwandern oder so. Und die Ausgabe erwirkst du während dem Lesen mit einem echo "irgendwas"; flush();
    du könntes auch zuerst ein HTML-Gerüst ausgeben (auch mit flush() ) und da hast du ne Javascript-Funktion, die dein Balken aufbaut und mit dem echo in der Read-Schleife rufst du immer wieder die Funktion mit neuem Wert auf

    Kommentar


    • #3
      hmm... klingt gut

      Danke!


      Hatte was in der Art schon versucht, aber keine Ausgabe bekommen...

      Ich werd' einfach nochmal einen Testlauf starten.

      =)

      thnx again!

      Kommentar


      • #4
        Wie wäre denn dieses:

        20min-Skript in Frame1:
        - schreibt während der Arbeit den Status in ein DB-Feld

        Status-Skript in Frame2
        - liest den Status aus der DB und zeigt ihn an mit <meta http-equiv="refresh" content="5"> im header, solange Status<100% oder so.
        Dieses meta-Tag sorgt dafür, daß das Skript alle 5 (Wert von content) Sekunden neu gestartet wird.

        Optional verträgt das Meta-Tag übrigens noch die Angabe content="5; URL=blabla.html", also die Angabe eines bestimmten Ziels, das du zB benutzen kannst wenn das 20min-Skript durchgelaufen ist (Status=fertig). Alternativ kannst du dann natürlich auch in Frame1 ein Meta-refresh ausgeben, wenn das Skript durchgelaufen ist.
        mein Sport: mein Frühstück: meine Arbeit:

        Sämtliche Code-Schnipsel sind im Allgemeinen nicht getestet und werden ohne Gewähr auf Fehlerfreiheit und Korrektheit gepostet.

        Kommentar


        • #5
          kewle Idee!

          Das ja...


          perfekt!!

          Kommt dem Multi-Threading Modell ja schon verdammt nahe =)


          Daran hatte ich noch gar nicht gedacht - Danke!!

          Kommentar

          Lädt...
          X