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

温州苍南网站建设图书网站建设实训心得

温州苍南网站建设,图书网站建设实训心得,昆明中国建设银行网站,北京赛车手机网站建设线程锁的必要性比如一个多线程抢票程序#xff0c;tickets作为临界资源#xff0c;所有的线程都要对它进行判断ticket是否大于0#xff0c;以及ticket–的操作。用ticket–操作举例#xff0c;虽然他看起来是一行C语言的代码#xff0c;但是实际上它的底层汇编经历了三个阶…线程锁的必要性比如一个多线程抢票程序tickets作为临界资源所有的线程都要对它进行判断ticket是否大于0以及ticket–的操作。用ticket–操作举例虽然他看起来是一行C语言的代码但是实际上它的底层汇编经历了三个阶段分别是load命令减法命令以及store命令。由于线程是不断在切换的因此一个线程在执行完load命令之后很可能还没来得及做减法或者写回操作就被切走了。CPU开始执行下一个线程。所以就会出现tickets为负数的情况。锁的原理我们发现tickets是所有线程都可以看到的资源因此是临界资源。而锁也是所有线程都可以看到的资源那么为什么它不会造成线程安全问题呢这是因为加锁和解锁的过程是原子性的。它的关键在于:只使用一条汇编就将内存中的数据和CPU寄存器中的数据进行交换了。进程终止进程终止时系统不会自动释放所持有的互斥锁、读写锁和Posix信号量进程终止时内核总是自动清理的唯一同步锁类型是fcntl记录锁。System V信号量应用程序可以选择进程终止时内核是否自动清理某个信号量。要理解这一过程首先要理解上下文数据的概念。其实就是线程被切换后它的PCB中保存着执行的数据。当线程A到来时假设它要抢锁目前其他线程没有它来的快。它的寄存器al的数据现在是0执行交换操作将内存中mutex的值交换给A的寄存器al中此时线程A的al值为1内存中mutex的值为0。当线程A被切换走时(是带着上下文数据1一起被切走的)线程B到来它的al寄存器中的值为0(线程设置的是自己的上下文数据互相不冲突)进行交换mutex的值和al寄存器的值(0和0交换)最终B拿到的值是0发生挂起等待。此时就可以根据每个线程的al中寄存器的值判断是哪一个线程抢到了锁从而只允许该线程访问临时资源。当A访问完资源后释放锁唤醒等待的线程并将mutex的值置为1。注意拿到锁的A在访问临时资源的时候还是会被切换的只不过其他线程此时无法访问临时资源。站在其他线程的视角要么A没有申请锁不能访问临界资源要么A申请锁了访问了临界资源。因此线程A访问临界资源的动作具有原子性。线程终止(1)一个线程也可以在持有某个互斥锁期间终止自己调用pthread_exit或被另一个线程取消。如果线程调用pthread_exit资源终止时这时它应该知道自己还持有一个互斥锁(对于程序员来说)如果是被另一个线程取消的情况线程可以安装清楚处理程序(pthread_cleanup_push)在被取消时调用来释放相应的锁。(2)对于线程意外操作导致进程终止的情况就和进程终止时相同。
http://www.hkea.cn/news/14525198/

相关文章:

  • 大型网站tag标签 索引wordpress怎么连接主机
  • 网站建设一般用英文怎么说做网站 就上宝华建站
  • 备案网站多长时间站群cms建站系统免费
  • 做网站打广告图片素材北京网站建设认知
  • 域名注册网站免费网站排名应该怎么做
  • 如何给网站做关键字怎么找网站站长
  • 重庆中小企业网站建设公司ppt哪个网站做的好
  • 湖南宁乡建设局网站两学一做微网站交流
  • 个人网站方案建设书网站seo快速优化
  • 网站建设要哪些seo网络软件开发专业是做什么的
  • 网站建设优化服务策划响应式网站建设准备
  • 山东省建设工程质量监督总站网站网页设计模板图片
  • 网站名称填写什么深圳高端设计公司名单
  • 简单的网站源码新东方烹饪学校学费价目表
  • 为什么要建设门户网站长兴县建设局网站
  • 网络维护网站美工惠州网站建设哪家强
  • 加盟网网站建设标签下载wordpress
  • php做的静态网站怎么加密个人智慧团建系统登录
  • 有口碑的番禺网站建设ui设计职业培训机构
  • 建网站解决方案seo网站推广价格
  • 专门做网站的公司与外包公司有哪些新乡市工程建设信息网
  • 自己怎么做网站优化西安手机网站建设公司排名
  • 佛山建网站哪家好网站网站开发逻辑
  • cms建站仓储网站开发
  • 成都营销型网站建设公司广州新闻报道
  • 做 个收废品网站做百度推广怎么做才能有电话
  • 有哪些网站做的很好wordpress压缩数据库查询
  • 网站建设需要材料关于旅游案例的网站
  • 建设部网站投诉如何注册遵义住房和城乡建设局网站
  • 如何在学校网站上做链接免费公司介绍网站怎么做