Sto usando launchctl per caricare / avviare il mio script python e funziona in una certa misura. Viene lanciato sempre 120, ma alcune volte il mio script impiega 500 secondi per essere eseguito e la mia teoria è che ho un processo in esecuzione che lo riavvia piuttosto che lasciare che il primo venga eseguito.
Quello che penso succede: - lancia tester.py (tester.py tempo stimato per completare 400s) - dopo i 120 anni - lancia nuovamente tester.py e abbandonare il primo
Cosa voglio: Per finire il primo tester.py non riavvialo.
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>Label</key>
<string>BuildNotification.py</string>
<key>ProgramArguments</key>
<array>
<string>/usr/bin/python</string>
<string>/Users/xcuer/tester.py</string>
</array>
<key>StartInterval</key>
<integer>120</integer>
<key>TimeOut</key>
<integer>7200</integer>
<key>ExitTimeOut</key>
<integer>7200</integer>
</dict>
</plist>