本文主要是介绍信号量,sem_init/wait/post/destroy函数的使用,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
sem_init();---------------------------------------------------------------------------------------
信号量的初始化函数定义在线程创建之前,资源变量定义为全局变量
一开始只有一个写资源,没有读资源
sem_wait();-------------------------------------------------------------------------------
sem_post();---------------------------------------------------------------------------------------------
资源变量定义为全局变量,且申请的和释放的不是同一个资源
sem_destroy();----------------------------------------------------------------------
--------------------------------------------------------------------------------------------------------------------
用信号量实现按顺序输出“hello”,“world”
通过初始化定义资源是否有来实现
----------------------------------------------------------------------------------------------------------------
把tid号定义为全局变量,当票买到100张时,用pthread_cancel() 来结束其他两个子线程,并销毁三个信号量,该子线程直接由return结束。三个线程设置成pthread_detach(), 系统自动回收。
这篇关于信号量,sem_init/wait/post/destroy函数的使用的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!