http://developer.mbed.org/users/mzta/code/mbed-rtos/#8ac966e2cd3f