test the function of the semaphore

Dependencies:   mbed-rtos mbed

Fork of rtos_semaphore by mbed official

Revision:
1:bdf73f017a77
Parent:
0:743b15bc7d6f
Child:
4:0acf7ac363a8
--- a/main.cpp	Fri Jul 13 10:49:19 2012 +0000
+++ b/main.cpp	Fri Jul 13 10:52:33 2012 +0000
@@ -0,0 +1,20 @@
+#include "mbed.h"
+#include "rtos.h"
+
+Semaphore two_slots(2);
+
+void test_thread(void const *name) {
+    while (true) {
+        two_slots.wait();
+        printf("%s\n\r", (const char*)name);
+        Thread::wait(1000);
+        two_slots.release();
+    }
+}
+
+int main (void) {
+    Thread t2(test_thread, (void *)"Th 2");
+    Thread t3(test_thread, (void *)"Th 3");
+    
+    test_thread((void *)"Th 1");
+}