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

导航网站 win8风格成都建设网站的公司有哪些

导航网站 win8风格,成都建设网站的公司有哪些,网站设计 字体,大学生兼职做网站如果有十个银行账号通过不同的十条线程同时向同一个账号转账时#xff0c;如果没有很好的机制保证十个账号依次存入#xff0c;那么这些转账可能出问题。我们可以通过互斥量来解决。 C标准库提供了这个互斥量#xff0c;只需要引入threads.头文件。 互斥量就像是一把锁如果没有很好的机制保证十个账号依次存入那么这些转账可能出问题。我们可以通过互斥量来解决。 C标准库提供了这个互斥量只需要引入threads.头文件。 互斥量就像是一把锁在一个线程在访问某个共享资源前需要对互斥量进行加锁操作其他线程想要对互斥量加锁就会被阻塞直到当前线程释放该锁。当锁被释放后被阻塞的线程都开始继续执行并再次重复前面的步骤开始争夺可以对互斥量进行加锁的操作。 互斥量这种方式可以保证每次只有一个线程在操作共享资源。例子如下 #include threads.h #include stdio.h #define THREAD_COUNT 10 #define THREAD_LOOP 100000000 mtx_t mutex;//全局互斥量对象 long counter 0; int run(void *arg){for(int i 0; i THREAD_LOOP; i){mtx_lock(mutex); // 对互斥量进行加锁counter; // 共享资源mtx_unlock(mutex); // 释放锁}printf(Thread %d terminates.\n,*((int*)arg));return thrd_success; }int main(void){ #ifndef __STDC_NO_THREADS__int ids[THREAD_COUNT];mtx_init(mutex,mtx_plain);//创建一把锁thrd_t threads[THREAD_COUNT];for(int i 0; i THREAD_COUNT; i){ids[i] i1;thrd_create(threads[i],run,idsi);//创建线程}for(int i 0; i THREAD_COUNT; i){thrd_join(threads[i],NULL);//等待所有线程执行完成}printf(Counter value is: %ld.\n,counter);mtx_destroy(mutex);//销毁互斥量对象 #endifreturn 0; } ~/Desktop$ gcc mtx.c -o mtx kyunbankyunban-Parallels-ARM-Virtual-Machine:~/Desktop$ ./mtx Thread 9 terminates. Thread 5 terminates. Thread 8 terminates. Thread 1 terminates. Thread 6 terminates. Thread 7 terminates. Thread 3 terminates. Thread 2 terminates. Thread 4 terminates. Thread 10 terminates. Counter value is: 1000000000. 在C语言中互斥量有三种 mtx_plain 最为简单的互斥量可对其进行基本的加锁和解锁操作但不适合需要重复加锁的场景如在递归调用中即使当前线程拥有该锁但对同一个mtx_plain互斥量重复加锁也会导致当前线程被阻塞从而导致死锁问题因为当前线程想要加锁就要先等待自己释放锁而要让当前线程释放锁就要先要它加锁成功完成对共享资源的操作后才能够释放锁如此一来就是一个无解的问题死锁就形成了对于递归调用中要用到锁的场景可以使用mtx_recursivemtx_recursive也被称为可重入互斥量它可以被同一个线程重复锁定多次而不会阻塞线程相应地要对它进行相应多次mtx_unlock才能够完全解锁。mtx_timed需要配合mtx_timedlock函数一起使用线程尝试给对应的互斥量加锁时会以阻塞的方式等待一定时间若超过给定的时间后仍未给互斥量成功上锁则线程继续执行。 C标准库还提供了以下两个与“互斥”有关的函数 call_once只调用指定方法一次即使它在多个线程中被调用。mtx_trylock锁住指定互斥量或直接返回
http://www.hkea.cn/news/14309812/

相关文章:

  • 四川网站建设 四川冠辰科技舆情app
  • 辽宁省建设厅官方网站中国建筑装饰网平台
  • 门户网站程序网站关键词排行查询
  • 街区网站建设电子商务网站开发案例
  • 北京做手机网站的公司哪家好wordpress 图片阴影
  • 新浦网站制作网站建设广东新闻联播2011
  • 网站建设的报价方案网站开发 一般用什么语言
  • scala做网站win10 电脑做网站服务器吗
  • 网站搭建申请建设网站答辩情况
  • 北京企业网站推广哪家公司好信阳网站开发
  • 外贸行业建站南通网站排名优化公司
  • 中国建设银行联行号查询网站有关大数据的网站及网址
  • 网站建设350元免费软件下载中心
  • 编程网站排名网校排名
  • 信息网站 模板凡客诚品商品来源
  • 网站开发公司企业长沙有哪些网站建设公司好
  • 网站两侧固定广告代码网站建设侵权行为有哪些
  • 域名注册好了怎么了做网站陈金凌 wordpress
  • python 做网站网站贴子推广怎么做
  • 有网站了小程序怎么做网上购物商城开题报告
  • 网站建设网站设计招商团队外包
  • 安徽省住房和建设厅网站拖拽式制作网站可以做会员吗
  • 为什么我的电脑有些网站打不开网页设计的各种标签
  • 济宁市做网站怎么做跨境电商网站
  • 手机企业wap网站网页设计的八种样式
  • wordpress如何备份 网站wordpress关键词描述插件
  • 网站前端怎么做国外外贸需求网站
  • 网站怎么建设?视觉比较好看的网站
  • 观音桥网站建设网站建设南宁模板建站多少钱
  • 增加网站广告位一个网站一年多少钱