*/
/**
+ * TestJoin is a simple application used to test the basic functionality of
+ * the join() system call for waiting on a set of threads in a TOSThreads
+ * based application.
+ *
+ * Upon a successful burn, you should see LED2 toggles at the end of each time
+ * period. In addition, during each time period, LED0 should toggle twice, and LED1
+ * toggles four times (with an interval of 1 sec). This LED behavior repeats in the
+ * next time period.
+ *
* @author Kevin Klues (klueska@cs.stanford.edu)
*/
interface Thread as NullThread;
interface Thread as TinyThread0;
interface Thread as TinyThread1;
- interface Thread as TinyThread2;
interface Leds;
}
}
for(;;){
call TinyThread0.start(NULL);
call TinyThread1.start(NULL);
- call TinyThread2.start(NULL);
- call TinyThread1.join();
call TinyThread0.join();
- call TinyThread2.join();
+ call TinyThread1.join();
+ call Leds.led2Toggle();
}
}
event void TinyThread0.run(void* arg) {
call TinyThread1.sleep(1000);
}
}
- event void TinyThread2.run(void* arg) {
- int i;
- for(i=0; i<6; i++){
- call Leds.led2Toggle();
- call TinyThread2.sleep(1000);
- }
- }
}