CMSIS RTOS生成的二值信号量问题

描述:我使用CubeMX生成freertos中创建二值信号量的原码image.png

从源代码中可以看到freertos在创建完成二值后会释放掉一次信号量值,我想问这样做的意义是什么,因为我在自己的代码中调用CMSIS RTOS的API创建一个信号量

image.png

创建完成后如果不进行一次获取的话image.png

那么我等待该信号量的线程就会运行一次,这不是我所需要的,那么既然我创建完成后不需要等待该信号量的线程运行(除非我在其他线程中,或者中断中释放掉该信号量后才可以运行该线程).这也是一般开发的要求把不能我还没有释放信号量线程因为底层创建信号量时释放掉了一次信号量就运行了一遍吧,试问freertos底层这样做的意义是什么呢?


已邀请:

要回复问题请先登录注册