Basic example showing the Mutex API
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_mutex
mutex example
main.cpp
- Committer:
- mbed_official
- Date:
- 2017-02-15
- Revision:
- 7:bd0aa7f21f53
- Parent:
- 6:1ae0d86d2020
File content as of revision 7:bd0aa7f21f53:
#include "mbed.h" #include "rtos.h" Mutex stdio_mutex; void notify(const char* name, int state) { stdio_mutex.lock(); printf("%s: %d\n\r", name, state); stdio_mutex.unlock(); } void test_thread(void const *args) { while (true) { notify((const char*)args, 0); Thread::wait(1000); notify((const char*)args, 1); Thread::wait(1000); } } int main() { Thread t2; Thread t3; t2.start(callback(test_thread, (void *)"Th 2")); t3.start(callback(test_thread, (void *)"Th 3")); test_thread((void *)"Th 1"); }