Basic example showing the Semaphore API

Dependencies:   mbed-rtos mbed

mbed 2 and mbed OS 5

This is an mbed 2 example. mbed OS 5 has integrated the mbed library with mbed-rtos. For an mbed-os example, please see:

Import programrtos_semaphore

semaphore example

Files at this revision

API Documentation at this revision

Comitter:
mbed_official
Date:
Wed Feb 15 13:54:49 2017 -0600
Parent:
5:574f47121e8e
Commit message:
Revert update to mbed-os.

Changed in this revision

main.cpp Show annotated file Show diff for this revision Revisions of this file
mbed-os.lib Show diff for this revision Revisions of this file
mbed-rtos.lib Show annotated file Show diff for this revision Revisions of this file
mbed.bld Show annotated file Show diff for this revision Revisions of this file
diff -r 574f47121e8e -r 1a383b363dc3 main.cpp
--- a/main.cpp	Fri Jan 13 19:50:12 2017 +0000
+++ b/main.cpp	Wed Feb 15 13:54:49 2017 -0600
@@ -1,19 +1,21 @@
 #include "mbed.h"
+#include "rtos.h"
 
 Semaphore two_slots(2);
-Thread t2;
-Thread t3;
-    
+
 void test_thread(void const *name) {
     while (true) {
         two_slots.wait();
         printf("%s\n\r", (const char*)name);
-        wait(1);
+        Thread::wait(1000);
         two_slots.release();
     }
 }
 
 int main (void) {
+    Thread t2;
+    Thread t3;
+
     t2.start(callback(test_thread, (void *)"Th 2"));
     t3.start(callback(test_thread, (void *)"Th 3"));
 
diff -r 574f47121e8e -r 1a383b363dc3 mbed-os.lib
--- a/mbed-os.lib	Fri Jan 13 19:50:12 2017 +0000
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,1 +0,0 @@
-https://github.com/ARMmbed/mbed-os/#2885c1b41e63158cb6faf5f107cd821ae06ef26c
diff -r 574f47121e8e -r 1a383b363dc3 mbed-rtos.lib
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/mbed-rtos.lib	Wed Feb 15 13:54:49 2017 -0600
@@ -0,0 +1,1 @@
+http://mbed.org/users/mbed_official/code/mbed-rtos/
\ No newline at end of file
diff -r 574f47121e8e -r 1a383b363dc3 mbed.bld
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/mbed.bld	Wed Feb 15 13:54:49 2017 -0600
@@ -0,0 +1,1 @@
+http://mbed.org/users/mbed_official/code/mbed/builds/
\ No newline at end of file