![1f2220f763a0ad94e321fd7e334adb8b.gif](https://img-blog.csdnimg.cn/img_convert/1f2220f763a0ad94e321fd7e334adb8b.gif)
ID:嵌入式情报局
作者:情报小哥
1什么是信号量?
01
形象理解
信号量说得简单一点就是一个非负计数整形变量,一旦占用了就会减1,释放就会加一,如果进程/线程需要占用信号量,而此时信号计数为0,则会把当前进程堵塞。
如果再形象一点那就类比生活中的交通灯,把程序的运行比作来往的车辆,而十字路口比作共享资源,信号量就类似于交通灯,起到协调各个进程有序的访问共享资源,这样就形成了进程的同步。
ID:嵌入式情报局
作者:情报小哥
01
形象理解
信号量说得简单一点就是一个非负计数整形变量,一旦占用了就会减1,释放就会加一,如果进程/线程需要占用信号量,而此时信号计数为0,则会把当前进程堵塞。
如果再形象一点那就类比生活中的交通灯,把程序的运行比作来往的车辆,而十字路口比作共享资源,信号量就类似于交通灯,起到协调各个进程有序的访问共享资源,这样就形成了进程的同步。