Skript mit Endlosschleife soll Neustart nicht behindern

Tekl

Fairs Vortrefflicher
Registriert
01.06.05
Beiträge
4.630
Hi,

ich habe ein Skript, was in einer Endlosschleife Ordner überwacht. Möchte ich nun den Rechner neu starten, wird das von dem Skript behindert und ich muss es mit ?. beenden. Gibt es eine Möglichkeit, dass sich das Skript selbst beendet, wenn der Rechner herunterfährt?
 

CloneOfMyself

Weigelts Zinszahler (Rotfranch)
Registriert
24.02.07
Beiträge
253
... in einer Endlosschleife Ordner überwacht. ...
Ist es wirklich eine Endlosschleife, oder benutzt du den "on idle"-Handler?
Der ist nämlich für solche Aufgaben gemacht, und lässt sich ohne weiteres durch einen Neustart beenden (wenn du den "on quit"-Handler aus diesem Beispiel weglässt). Das Script muss als Programm mit der Option "Nicht automatisch Beenden" gesichert werden, damit's funktioniert:

on idle
***beep
***return 4
end idle

on quit
***if button returned of ¬
******(display dialog "Really quit?" buttons {"Continue", "Quit"} default button {"Continue"}) ¬
*********is "Quit" then
******continue quit
***else
******tell application "Finder" to open file (path to me as text)
***end if
end quit
 
Zuletzt bearbeitet:

Tekl

Fairs Vortrefflicher
Registriert
01.06.05
Beiträge
4.630
Aber wann genau greift on idle? Das Skript überwacht Ordner und benennt sie so um, dass im Ordnernamen steht wie voll der Ordner ist, da der Finder über's Netz die Größen falsch oder sehr spät berechnet. Da das Skript auf dem Server läuft könnte es ja passieren, wenn da viel los ist, dass das Skript nicht läuft, oder?

Aber schon mal Danke für deine Tipps.
 

CloneOfMyself

Weigelts Zinszahler (Rotfranch)
Registriert
24.02.07
Beiträge
253
Der on idle-Handler ist im Prinzip nicht viel anders, als eine Schleife. Wenn das Script grad nichts anderes vor hat, arbeitet es den on idle-Handler bis zum Schluss durch.

Der return-Wert (in Sekunden) gibt dabei an, wann das Skript nach Abarbeitung zum on idle-Handler zurückkehren soll, um die ganze Prozedur von vorn zu beginnen. Also im Prinzip kein bisschen schlechter als deine bisherige repeat-Schleife.
 

Tekl

Fairs Vortrefflicher
Registriert
01.06.05
Beiträge
4.630
Ok, vielen Dank für die kompetente Hilfe.