• 软件测试技术
  • 软件测试博客
  • 软件测试视频
  • 开源软件测试技术
  • 软件测试论坛
  • 软件测试沙龙
  • 软件测试资料下载
  • 软件测试杂志
  • 软件测试人才招聘
    暂时没有公告

字号: | 推荐给好友 上一篇 | 下一篇

Java语言深入--对JAVA 的多线程浅析

发布: 2008-5-09 10:43 | 作者: 不详 | 来源: 不详 | 查看: 58次 | 进入软件测试论坛讨论

领测软件测试网

Unlocking readLock:4

Write op:3

Unlocking writeLock:3

从这可看到,

2.5死锁以及怎样避免死锁:

为了防止数据项目的并发访问,应将数据项目标为专用,只有通过类本身的实例方法的同步区访问。为了进入关键区,线程必须取得对象的锁。假设线程要独占访问两个不同对象的数据,则必须从每个对象各取一个不同的锁。现在假设另一个线程也要独占访问这两个对象,则该进程必须得到这两把锁之后才能进入。由于需要两把锁,编程如果不小心就可能出现死锁。假设第一个线程取得对象A的锁,准备取对象B的锁,而第二个线程取得了对象B的锁,准备取对象A的锁,两个线程都不能进入,因为两者都不能离开进入的同步块,既两者都不能放弃目前持有的锁。避免死锁要认真设计。线程因为某个先决条件而受阻时,如需要锁标记时,不能让线程的停止本身禁止条件的变化。如果要取得多个资源,如两个不同对象的锁,必须定义取得资源的顺序。如果对象A和B的锁总是按字母顺序取得,则不会出现前面说道的饿死条件。

 

三Java多线程的优缺点

 

由于JAVA的多线程功能齐全,各种情况面面具到,它带来的好处也是显然易见的。多线程带来的更大的好处是更好的交互性能和实时控制性能。当然实时控制性能还取决于系统本身(UNIX,Windows,Macintosh 等),在开发难易程度和性能上都比单线程要好。当然一个好的程序设计语言肯定也难免有不足之处。由于多线程还没有充分利用基本OS的这一功能。这点我在前面已经提到,对于不同的系统,上面的程序可能会出现截然不同的结果,这使编程者偶会感到迷惑不解。希望在不久的将来JAVA的多线程能充分利用到操作系统,减少对编程者的困惑。我期待着JAVA会更好。 
    2008年1月14日下午两点,由中程在线资深讲师徐锋主讲的"揭开软件估算的神秘面纱",正式在中程在线全新实训基地开讲。此次讲座吸引了上百人前来听讲,现场氛围十分浓厚。主讲老师也以互动交流等多种方式深入浅出地介绍了与软件估算有关的主要概念,并深入、全面地介绍了与软件估算有关的多种估算方法。以及估算与计划和项目控制,估算与目标和承诺之间的关系等等。

    本次"揭开软件估算的神秘面纱"讲座的主讲徐锋,是信息产业部电子信息中心高级咨询顾问。并在系统需求工程、系统分析与设计、架构设计、项目管理、软件过程改进、IT规划、技术管理等方面均有丰富的工作经验。已发表文章近50篇,著书6本。在业内享有有良好的声誉。

延伸阅读

文章来源于领测软件测试网 https://www.ltesting.net/


关于领测软件测试网 | 领测软件测试网合作伙伴 | 广告服务 | 投稿指南 | 联系我们 | 网站地图 | 友情链接
版权所有(C) 2003-2010 TestAge(领测软件测试网)|领测国际科技(北京)有限公司|软件测试工程师培训网 All Rights Reserved
北京市海淀区中关村南大街9号北京理工科技大厦1402室 京ICP备10010545号-5
技术支持和业务联系:info@testage.com.cn 电话:010-51297073

软件测试 | 领测国际ISTQBISTQB官网TMMiTMMi认证国际软件测试工程师认证领测软件测试网