Skocz do zawartości
  • 👋 Witaj na MPCForum!

    Przeglądasz forum jako gość, co oznacza, że wiele świetnych funkcji jest jeszcze przed Tobą! 😎

    • Pełny dostęp do działów i ukrytych treści
    • Możliwość pisania i odpowiadania w tematach
    • System prywatnych wiadomości
    • Zbieranie reputacji i rozwijanie swojego profilu
    • Członkostwo w jednej z największych społeczności graczy

    👉 Dołączenie zajmie Ci mniej niż minutę – a zyskasz znacznie więcej!

    Zarejestruj się teraz

Czas na wykonanie skryptu


Rekomendowane odpowiedzi

Opublikowano

Witam.

Czy jest możliwość, żeby ustawić czas na wykonanie całej pętli.

Np.. Mam pętle i w niej określone funkcje. np:

 

Func Start()
    ;Odpalenie_strony()
    While 1

            zad1()
            zad2()
           zad3()
    Przerwa()
    Wend
EndFunc

 

i żeby określić czas wykonania np tych zad1,2,3 np 5min. 

Że jak się zatnie np na zad2(). To po 5 min, ruszy mi od początku.

 

Pozdrawiam.

Opublikowano

Wystarczy sprawdzać za każdym razem wykonanie każdego zadania, jak to zrobić to już twój problem. W razie nie wykonania wraca do początku funkcji, w razie wykonania idzie dalej. 

 

Odstępy czasowe  reguluje sie sleepami . 

Mózg to nie mydło; nie ubędzie Ci go, gdy go użyjesz.

Opublikowano

Twoja wypowiedz jest bez sensu i niczego nie wniosła w rozwiązanie.  Czy pytałem o sleep'y? Czy możliwość ograniczenia czasowego wykonanie danej pętli.

Opublikowano

Nie jest mi znany sposób zresetowania czasowego pętli, czy pojedynczej funkcji.

Można natomiast zresetować cały skrypt. Nie wiem czy takie coś cię też zadowoli.

Oto przykład testowy:

MsgBox(64,"RESTART", "", 2)
$iTimeReset = 2500
While True
    AdlibRegister("_ScriptRestart", $iTimeReset)
    zad1()
    zad2()
    zad3()
    Przerwa()
    AdlibUnRegister()
    ConsoleWrite("Koniec" & @LF)
Wend


Func zad1()
	Sleep(500)
EndFunc

Func zad2()
	Sleep(500)
EndFunc

Func zad3()
	Sleep(500)
EndFunc

Func przerwa()
	Sleep(1500)

EndFunc


Func _ScriptRestart()
   AdlibUnRegister()
   If @compiled Then
      Run(@ScriptFullPath)
   Else
	  Run(@AutoItExe & " " & @ScriptFullPath)
   EndIf
   Exit
EndFunc

Jeżeli czas oczekiwania zapisany w $iTimeReset będzie dłuższy od czasu wykonywania pętli to następuje ponowne uruchomienie skryptu (tak jest w skrypcie testowym).

W przeciwnym razie pętla będzie wykonywana bez przeszkód (jeżeli zmienimy $iTimeReset na np. 3500).

Zarchiwizowany

Ten temat przebywa obecnie w archiwum. Dodawanie nowych odpowiedzi zostało zablokowane.

×
×
  • Dodaj nową pozycję...