当前位置: 首页> 财经> 股票 > 泉州seo排名工具_石家庄做网站的公司_免费推广产品平台有哪些_爱站网关键词挖掘工具站长工具

泉州seo排名工具_石家庄做网站的公司_免费推广产品平台有哪些_爱站网关键词挖掘工具站长工具

时间:2025/7/13 13:22:00来源:https://blog.csdn.net/zbz123456789_/article/details/143695804 浏览次数:0次
泉州seo排名工具_石家庄做网站的公司_免费推广产品平台有哪些_爱站网关键词挖掘工具站长工具

一.前言

线程的主要优势在于,能够通过全局变量来共享信息。不过,这种便捷的共享是有代价的:必须确保多个线程不会同时修改同一变量,或者某一线程不会读取正在由其他线程修改的变量。

 临界区是指访问某一共享资源的代码片段,并且这段代码的执行应为原子操作,也就是同时访问同一共享资源的其他线程不应终端该片段的执行。

 二.什么交线程同步

线程同步:即当有一个线程在对内存进行操作时,其他线程都不可以对这个内存地址进行操作,直到该线程完成操作,其他线程才能对该内存地址进行操作,而其他线程则处于等待状态。

 三.实例

下面的例子将直观地向大家展示:多个线程竞争同一个共享资源时造成地线程同步问题

/*使用多线程实现买票的案列有三个窗口,一共是100张票
*/
#include <stdio.h>
#include <pthread.h>
#include <string.h>//全局变量,所有的线程都共享这个资源
int tickets = 100;void *sellticket(void *arg)
{//买票while(tickets > 0){printf("线程%ld, 正在卖第 %d 张门票\n",pthread_self(),tickets);tickets--;}return NULL;
}int main()
{pthread_t tid1,tid2,tid3;pthread_create(&tid1,NULL,sellticket,NULL);pthread_create(&tid2,NULL,sellticket,NULL);pthread_create(&tid3,NULL,sellticket,NULL);//阻塞回收pthread_join(tid1,NULL);pthread_join(tid2,NULL);pthread_join(tid2,NULL);//线程分离// pthread_detach(tid1);// pthread_detach(tid2);// pthread_detach(tid2);//主线程退出pthread_exit(NULL);return 0;
}

关键字:泉州seo排名工具_石家庄做网站的公司_免费推广产品平台有哪些_爱站网关键词挖掘工具站长工具

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com

责任编辑: