mbed-os/libraries/tests/rtos/mbed/semaphore/main.cpp

21 lines
401 B
C++

#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");
}