]> oss.titaniummirror.com Git - tinyos-2.x.git/blobdiff - apps/tosthreads/apps/TestJoin/TestJoinC.nc
Address comments for README from RC4 testing, and clarify the expected LED behavior
[tinyos-2.x.git] / apps / tosthreads / apps / TestJoin / TestJoinC.nc
index fa8c9753fbf29973e650a965c2f776fa4f76a606..58485f1a1aa4b5e91542ea7c009c1a3654a03e75 100644 (file)
  */
  
 /**
+ * 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)
  */
 
@@ -39,7 +48,6 @@ module TestJoinC {
     interface Thread as NullThread;
     interface Thread as TinyThread0;
     interface Thread as TinyThread1;
-    interface Thread as TinyThread2;
     interface Leds;
   }
 }
@@ -53,10 +61,9 @@ implementation {
     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) {
@@ -73,11 +80,4 @@ implementation {
       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);
-    }
-  }
 }