当前位置: 首页 > news >正文

对重庆电子政务网站建设评价长沙市旅游景点

对重庆电子政务网站建设评价,长沙市旅游景点,广告版面设计图片,电商平台制作公司抢票的例子 竞争过程 进程A被切走 进程B被切走 结论#xff1a; 互斥 int pthread_mutex_init(pthread_mutex_t *mutex, const pthread_mutexattr_t *attr); mutex: 指向要初始化的互斥锁的指针。attr: 用于设置互斥锁属性的指针#xff0c;通常可以传入 NULL 以使用默认属性… 抢票的例子 竞争过程 进程A被切走 进程B被切走 结论 互斥 int pthread_mutex_init(pthread_mutex_t *mutex, const pthread_mutexattr_t *attr); mutex: 指向要初始化的互斥锁的指针。attr: 用于设置互斥锁属性的指针通常可以传入 NULL 以使用默认属性。 锁的本质 加锁 解锁 线程安全与重入 死锁 线程同步 生产消费模型 例子 条件变量 demo #includeiostream #includestring #includepthread.h #includeunistd.hint tickets1000; pthread_mutex_t mutexPTHREAD_MUTEX_INITIALIZER; pthread_cond_t condPTHREAD_COND_INITIALIZER;void *start_routine(void* args){std::string namestatic_castconst char*(args);while(true){pthread_mutex_lock(mutex);pthread_cond_wait(cond,mutex);std::coutname-ticketsstd::endl;tickets--;pthread_mutex_unlock(mutex);}return nullptr; }int main(){const int num5;pthread_t tid[num]{};for(int i0;inum;i){char *namenew char[64];snprintf(name,sizeof(name),thread %d,i1);pthread_create(tidi,nullptr,start_routine,name);}while(true){std::coutmain thread weak upstd::endl;pthread_cond_signal(cond);sleep(1);}for(int i0;inum;i){pthread_join(tid[i],nullptr);}return 0;} 信号量 常用函数 环形队列 环形队列代码 #includeRingQueue.hpp #includeunistd.h #includepthread.h #includerandom #includeiostreamvoid *ProductorRoutine(void* rq){RingQueueint *ringqueuestatic_castRingQueueint*(rq);while(true){int datarand()%101;ringqueue-Push(data);std::cout生产完成 生产的数据是datastd::endl;sleep(1);} }void *ConsumerRoutine(void *rq){RingQueueint *ringqueuestatic_castRingQueueint*(rq);while(true){int data;ringqueue-Pop(data);std::cout消费完成 消费数据是datastd::endl;sleep(1);} }int main(){srand((unsigned int)time(nullptr)^getpid()^pthread_self());RingQueueint *rqnew RingQueueint();pthread_t p,c;pthread_create(p,nullptr,ProductorRoutine,rq);pthread_create(c,nullptr,ConsumerRoutine,rq);pthread_join(p,nullptr);pthread_join(c,nullptr);} #includesemaphore.h #includevector #includecassert #includectime #includesys/types.hstatic const int gcap5;templateclass T class RingQueue{ public:void P(sem_t sem){int nsem_wait(sem);assert(n0);(void)n;}void V(sem_t sem){int nsem_post(sem);assert(n0);(void)n;}public:RingQueue(const int capgcap):_q(cap),_cap(cap){int nsem_init(_spaceSem,0,_cap);assert(n0);nsem_init(_dataSem,0,0);assert(n0);productorStepConsumerStep0;}void Push(const T in){P(_spaceSem);_q[productorStep]in;productorStep%_cap;V(_dataSem);}void Pop(T out){P(_dataSem);out_q[ConsumerStep];ConsumerStep%_cap;V(_spaceSem);}~RingQueue(){sem_destroy(_spaceSem);sem_destroy(_dataSem);}private:std::vectorT _q;int _cap;sem_t _spaceSem; //生产者 空间资源sem_t _dataSem; //消费者 数据资源int productorStep;int ConsumerStep; };
http://www.hkea.cn/news/14316765/

相关文章:

  • 广州信科做网站成都地铁小程序
  • 网站 多个ip 备案建设工程合同协议书
  • 怎样做企业营销网站男女做床上网站
  • 福田做棋牌网站建设多少钱完整php网站开发
  • 深圳网站优化怎么做做a 免费网站
  • 北碚集团网站建设电子商务主要是干嘛的
  • 网站链接是什么六安网站建设网络服务
  • 做悬浮导航的网站郑州seo公司哪家好
  • 营销网站建设培训学校紫鸟超级浏览器手机版
  • 网站二级目录怎么做在线网站转app
  • 广州网站建设好公司网站备案 修改
  • 徐州哪里做网站广州网络营销推广
  • 微网站建站php 网站共享变量
  • 软件毕设代做网站青海中小企业网站建设
  • 做素材类的网站赚钱吗做购物网站 需要手续
  • 学计算机网站开发好吗多用户商城网站开发
  • 网站运营优化推广html入门到精通
  • 北京 网站 优化网络平台建设怎么做
  • 仿制网站软件哈尔滨免费自助建站模板
  • 做非洲外贸的网站wordpress主主页只显示标题
  • 网站建设后压缩代码怎样查网站谁做的
  • 国内哪个网站用wordpress北京中国建设部网站首页
  • 湖南建设厅网站二建注销喀什市建设局网站查证件
  • 加强和改进校园网站内容建设大学生网页设计作业成品下载
  • 什么查网站是否降权网店美工分为几个级别
  • 做网站根据内容生成pdf语文建设 官方网站
  • 河北网站seowordpress首页404伪静态
  • 做网站用什么样的电脑网站名字怎样做版权
  • 百度这个网站怎么做自己怎么做视频网站
  • 贸易公司网站建设要多少钱wordpress 首页错误