Effacer les filtres
Effacer les filtres

How Can I set a program that can run my script at a particular day and time. If I keep my program running and computer turned on?

9 vues (au cours des 30 derniers jours)
I have made a script that can send automatic mail to my recepients. But I want to sent a perticular day and time for the auto mail to be sent. Can some one help me with the code for my problem?

Réponse acceptée

Walter Roberson
Walter Roberson le 4 Fév 2021
Modifié(e) : Walter Roberson le 4 Fév 2021
MATLAB does not offer an absolute time timer, only relative time timers. Your options are:
1) use Windows "at" or similar to command matlab be started to run a command, such as using the "batch" option. The timing is kept outside of MATLAB, but the program might take a minute to launch https://docs.microsoft.com/en-us/troubleshoot/windows-client/system-management-components/use-at-command-to-schedule-tasks
2) have a periodic timer() object that checks the current time and starts a file handle you have previously stored in a data object. Because the timer is likely to drift, you might not launch at exactly the time you want, but when you do start, the function will start immediately without having to wait for matlab to launch. The more often you schedule the timer, the more resources get used.
3) Use an adaptive scheduling of the timer, such as every 6 hours when it is not close to the launch time, but more and more frequently as the time approaches, paying attention to the difference between scheduled start and actual start to try to estimate drift and timer() overhead, with a goal of eventually starting the function as near as possible to the scheduled time. When you got close enough, you could launch slightly early and have the function pause() for just less than the time remaining before the scheduled time. You would only bother with this kind of trouble if it was important that the function start time was as close as possible to schedule.

Plus de réponses (1)

Adithya Narasimhan
Adithya Narasimhan le 4 Fév 2021
Modifié(e) : Adithya Narasimhan le 4 Fév 2021
I have another question regarding the timer() commond can I specify a day and time for my script to be executed or is there any other approch.
  1 commentaire
Walter Roberson
Walter Roberson le 4 Fév 2021
No. As I said, there are no absolute time timers. You can only specify relative time to time the timer is started. "run 7 hours from now" , not "run at 1pm"

Connectez-vous pour commenter.

Catégories

En savoir plus sur Time Series Objects dans Help Center et File Exchange

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by