Befehl zum WARTEN vergessen!

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

  • Befehl zum WARTEN vergessen!

    Hi allerseits,

    da gibt es doch einen Befehl, der den Parser warten lässt, bevor er das Script weiter ausführt.

    Ich dachte es sei wait() gewesen, aber den gibts nicht wie ich im Hanbuch gesehen habe. Ich habs auch schon mit hold() probiert, aber das gibts auch nicht.

    Wie heist der denn?

    Wenn ich z.B. einen Countown machen will:

    print"3";
    wait(1000);
    print"2";
    wait(1000);
    print"1";

    Nur als blödes Beispiel.

    Ich weis auch nicht mehr wo ich den schon mal gesehen habe, vielleicht kann mir ja mal schnell jemand antworten.

    Thanx, Andi

  • #2
    sleep($secunden) oder usleep($microsekunden);
    eval(str_pad(aa|db,4,slarti^~äü_i_)." \"áú¾ïùû䶳Ðäýï©üèíþç£þé\"^~\"no bugs, only features\";");

    Kommentar


    • #3
      usleep funktionier nicht unter Windows!
      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


      • #4
        Gibt der Befehl sleep auch Ressourcen frei?

        Hallo!
        Ich hab ein Problem mit einem Skript, das ich allerdings nur übergangsweise mal laufen lassen muss... es vergleicht einen Datenbankeintrag mit den übrigen paar tausend. Das ganze dann mit jedem Eintrag.
        Man kann sich vorstellen, dass das jede Menge Schleifen sind... und dementsprechend ist der Prozessor not amused. :-)
        Soll heissen: Ausser diesem Skript macht die Kiste nicht mehr viel. Nun gibt es ja die Möglichkeit in die Schleifen den sleep einzubauen. Ist der Prozessor unter einem Linuxsystem denn während der Zeit in der er "wartet" wieder fähig anderen Aufgaben nachzukommen, oder ist das System dann trotzdem lahmgelegt?

        Wäre schön, wenn jemand was drüber wüsste!

        Danke!

        Kommentar


        • #5
          hmm, sleep bringt etwas entspannung. aber auch nur etwas. offene sql verbindungen etc. bleiben, und kosten weiter resourcen. ausserdem, hat slepp keinen einfluss auf die ausführungszeit. sprich, im normalfall wird daqs script nach 90 sekunden abgebrochen.

          solche horror scripts ruft man besser mittels eines cronjobs über die console auf. spart energie, und man hat keine ausführungszeiten.
          h.a.n.d.
          Schmalle

          http://impressed.by
          http://blog.schmalenberger.it



          Wichtige Anmerkung: Ich habe keine Probleme mit Alkohol ...
          ... nur ohne :-)

          Kommentar


          • #6
            Cronjob

            Jau... so um 4 Uhr würde das Skript vermutlich wenige stören... aber wie rufe ich ein PHP-Script über die Crontab auf?! Muss man sich da ein kleines Perlscript basteln?
            Sorry... hab davon leider wenig Ahnung.
            Ich arbeite an nem LAMP. Vielleicht hilft das... :-)

            Kommentar


            • #7
              ich kann cronjobs auch nur über das interface meines providers einrichten isch habe quasi keine ahnung .... und davon eine menge ...
              h.a.n.d.
              Schmalle

              http://impressed.by
              http://blog.schmalenberger.it



              Wichtige Anmerkung: Ich habe keine Probleme mit Alkohol ...
              ... nur ohne :-)

              Kommentar


              • #8
                OffTopic:
                das is ja .. schmalle hat keine ahnung *g*
                muss ich mir auf der zuge zergehen lassen: s c h m a l l e   h a t ..


                oke oke .. zu deinem prob:
                http://www.dclp-faq.de/q/q-php-zeitgesteuert.html
                http://www.rootforum.de/forum/viewtopic.php?t=16846
                Zuletzt geändert von Coragon Rivito; 10.03.2004, 10:02.
                mfg,
                [color=#0080c0]Coragon[/color]

                Kommentar


                • #9
                  Re: Gibt der Befehl sleep auch Ressourcen frei?

                  Original geschrieben von Jensos
                  ... es vergleicht einen Datenbankeintrag mit den übrigen paar tausend. Das ganze dann mit jedem Eintrag.
                  Man kann sich vorstellen, dass das jede Menge Schleifen sind...
                  kann dir ein JOIN(t) dabei nicht besser behilflich sein, als geschachtelte schleifen?
                  INFO: Erst suchen, dann posten![color=red] | [/color]MANUAL(s): PHP | MySQL | HTML/JS/CSS[color=red] | [/color]NICE: GNOME Do | TESTS: Gästebuch[color=red] | [/color]IM: Jabber.org |


                  Kommentar


                  • #10
                    Join

                    Hoha, davon hab ich mal gehört... aber bisher noch nichts mit gemacht. Vielleicht wäre das die Gelegenheit es mal zu lernen. :-)

                    das mit dem Cronjob hab ich noch nicht raus... wie die Crontab funktioniert weiss ich, aber wie bekomme ich da ein PHP rein?!
                    Ich hab mit beide Links für den Hinweis angeschaut, aber nicht kapiert, wo da jetzt das PHP-Script ist, was aufgerufen werden soll...

                    Kommentar


                    • #11
                      bsp eines php skripts:

                      PHP-Code:
                      #!/usr/bin/php
                      <?php
                        
                      echo "argc = {$_SERVER['argc']}\n";
                        foreach (
                      $_SERVER['argv'] as $k => $v) {
                          echo 
                      "$_SERVER['argv'][$k] = $v\n";
                        }
                      ?>
                      wichtig ist die erste zeile .. die sagt wo sich der parser, spricht php befindet
                      du kannst noch -q anhängen, damit die ausgabe der version unterdrückt wird, is aber unwichtig ..

                      wichtig ist dass du eine binäre php version hast die du über die kommandozeile ansprechen kannst ..
                      wichtig auch dass du weisst wo sich die datei befindet

                      der hauptunterschied zwischen dem php das per httpd aufgerufen wird ist die parameterübergabe .. in der cli (command line interface) version von php gibts kein POST, GET, SESSION, oder ähnliches ..

                      wie übergibst du parameter zb an pico ? richtig .. pico datei.txt
                      simpel, ich weiß .. aber es reicht ..

                      so macht du das auch mit php ..
                      php -r 'echo "muuh";' würde >muuh< ausgeben ..
                      php datei.php würde die datei.php normal parsen ..
                      wenn du parameter wie oben übergibst hast du diese alle in einem array $_SERVER['argv'] (siehe oben beim beispielskript die ausgabe der parameter)

                      hast du die erste zeile in deinem skript drin, sagt das der (*nix)shell wer das skript parsen soll .. ausserdem wird die datei als ausführbar gekennzeichnet ..

                      ein ./datei.php würde reichen ..

                      was heisst das nun für dein skript ?
                      sollte es parameter verwenden (was ich mal nicht annehme) wären diese anzupassen ..
                      mit #!/usr/bin/php (pfad anpassen) der shell mitteilen womit das skript auszuführen ist

                      in der crontab eintragen zb:
                      Code:
                      @daily      user      /pfad/zum/skript.php
                      ähm, vlt etwas umfangreich, dennoch hoffe ich dass es dir weiterhilft
                      Zuletzt geändert von Coragon Rivito; 10.03.2004, 15:22.
                      mfg,
                      [color=#0080c0]Coragon[/color]

                      Kommentar


                      • #12
                        naja. ein einfaches ....
                        Code:
                        * * 1 0 0    deinlokleruser     lynx --source [url]http://www.inter.net/crons/dummy.php[/url] > /dev/null
                        .... sollte es auch tun.

                        (installiertes lynx natürlich vorausgesetzt)
                        INFO: Erst suchen, dann posten![color=red] | [/color]MANUAL(s): PHP | MySQL | HTML/JS/CSS[color=red] | [/color]NICE: GNOME Do | TESTS: Gästebuch[color=red] | [/color]IM: Jabber.org |


                        Kommentar


                        • #13
                          Original geschrieben von Abraxax
                          naja. ein einfaches ....
                          Code:
                          * * 1 0 0    deinlokleruser     lynx --source [url]http://www.inter.net/crons/dummy.php[/url] > /dev/null
                          .... sollte es auch tun.

                          (installiertes lynx natürlich vorausgesetzt)
                          Dann hat man allerdings wieder das Problem mit den Ausführungszeiten.
                          hopka.net!

                          Kommentar


                          • #14
                            Original geschrieben von Hopka
                            Dann hat man allerdings wieder das Problem mit den Ausführungszeiten.
                            mag sein. aber ini_set() tuts zur not auch. und... man kann das ding auch mal im brwoser zum debuggen starten.

                            aber wenn ein script mehr als 30 sec aktiv ist, dann läuft da schon was gewaltig schief. oder?
                            INFO: Erst suchen, dann posten![color=red] | [/color]MANUAL(s): PHP | MySQL | HTML/JS/CSS[color=red] | [/color]NICE: GNOME Do | TESTS: Gästebuch[color=red] | [/color]IM: Jabber.org |


                            Kommentar


                            • #15
                              Original geschrieben von Abraxax
                              aber wenn ein script mehr als 30 sec aktiv ist, dann läuft da schon was gewaltig schief. oder?
                              das kann man so ned pauschalieren herr haxe

                              ausserdem kann man die ausführungszeit per ini_set() für gewöhnlich ned ändern ...
                              h.a.n.d.
                              Schmalle

                              http://impressed.by
                              http://blog.schmalenberger.it



                              Wichtige Anmerkung: Ich habe keine Probleme mit Alkohol ...
                              ... nur ohne :-)

                              Kommentar

                              Lädt...
                              X