run once and run periodic example work

Dependencies:   JobScheduler

Committer:
sgnezdov
Date:
Tue Jul 11 20:35:35 2017 +0000
Revision:
2:4fe42e3bafe4
Parent:
0:728722f45131
Child:
3:dd0e559a9ff7
added run once schedule job

Who changed what in which revision?

UserRevisionLine numberNew contents of line
sgnezdov 0:728722f45131 1 #include "mbed.h"
sgnezdov 0:728722f45131 2 #include "scheduler.h"
sgnezdov 0:728722f45131 3 #include "LinkedList.h"
sgnezdov 0:728722f45131 4 #include "jobService.h"
sgnezdov 2:4fe42e3bafe4 5 #include "schedules.h"
sgnezdov 0:728722f45131 6
sgnezdov 0:728722f45131 7 void job1()
sgnezdov 0:728722f45131 8 {
sgnezdov 0:728722f45131 9 printf("Job 1\n");
sgnezdov 0:728722f45131 10 }
sgnezdov 0:728722f45131 11
sgnezdov 0:728722f45131 12 void runScheduler()
sgnezdov 0:728722f45131 13 {
sgnezdov 0:728722f45131 14 JobScheduler::JobService js;
sgnezdov 0:728722f45131 15 JobScheduler::Scheduler scheduler(&js);
sgnezdov 0:728722f45131 16
sgnezdov 0:728722f45131 17 js.Register(1, job1);
sgnezdov 0:728722f45131 18
sgnezdov 0:728722f45131 19 scheduler.Start();
sgnezdov 2:4fe42e3bafe4 20
sgnezdov 2:4fe42e3bafe4 21 time_t nowSecs = time(NULL);
sgnezdov 2:4fe42e3bafe4 22 scheduler.JobAdd(1, new JobScheduler::RunOnceSchedule(nowSecs + 5), NULL);
sgnezdov 0:728722f45131 23 wait(5);
sgnezdov 0:728722f45131 24 scheduler.Stop();
sgnezdov 0:728722f45131 25 scheduler.WaitToStop();
sgnezdov 0:728722f45131 26 }
sgnezdov 0:728722f45131 27
sgnezdov 0:728722f45131 28 void useTime()
sgnezdov 0:728722f45131 29 {
sgnezdov 0:728722f45131 30 //set_time(1256729737); // Set RTC time to Wed, 28 Oct 2009 11:35:37
sgnezdov 0:728722f45131 31 // while (true) {
sgnezdov 0:728722f45131 32 //
sgnezdov 0:728722f45131 33 // printf("Time as seconds since January 1, 1970 = %d\n", seconds);
sgnezdov 0:728722f45131 34 //
sgnezdov 0:728722f45131 35 // printf("Time as a basic string = %s", ctime(&seconds));
sgnezdov 0:728722f45131 36 //
sgnezdov 0:728722f45131 37 // char buffer[32];
sgnezdov 0:728722f45131 38 // strftime(buffer, 32, "%I:%M %p\n", localtime(&seconds));
sgnezdov 0:728722f45131 39 // printf("Time as a custom formatted string = %s", buffer);
sgnezdov 0:728722f45131 40 //
sgnezdov 0:728722f45131 41 // wait(1);
sgnezdov 0:728722f45131 42 // }
sgnezdov 0:728722f45131 43 }
sgnezdov 0:728722f45131 44
sgnezdov 0:728722f45131 45 int main()
sgnezdov 0:728722f45131 46 {
sgnezdov 0:728722f45131 47 printf("\nJob Scheduler Demo\n");
sgnezdov 0:728722f45131 48 runScheduler();
sgnezdov 0:728722f45131 49 printf("done\n");
sgnezdov 0:728722f45131 50
sgnezdov 0:728722f45131 51 exit(0);
sgnezdov 0:728722f45131 52 }
sgnezdov 0:728722f45131 53