mirror of
https://github.com/FreeRTOS/Lab-Project-FreeRTOS-POSIX.git
synced 2025-10-17 07:22:10 +08:00

Update the pthread_cond_t implementation to utilize Task Notifications. In the existing implementation, if multiple threads of different priority are blocked on the same condition, a higher priority thread, in most cases, will unblock multiple times due to taking the underlying semaphore multiple times instead of just once. Switching to Task notifications guarantees that all tasks are equally notified and unblocked. pthread_cond_signal has also been updated to conform to the POSIX specification in that it will unblock the highest priority task waiting on the condition. Resolves #8