期刊专题 | 加入收藏 | 设为首页 12年实力经营,12年信誉保证!论文发表行业第一!就在400期刊网!

全国免费客服电话:

计算机光盘软件与应用杂志社

我们的优势!

当前位置:首页 > 学术论文 > 科技类 >

浅议Java多线程程序设计

  摘要:多线程是Java语言中一个重要的特性,本文就四个问题进行了阐述:创建线程的方法;线程的生命周期,即创建状态、可运行状态、阻塞状态、终止状态;通过两个实例阐述了实现多线程的两种方法:一是通过扩展Thread类来创建多线程,二是通过实现Runnable接口来创建多线程;通过一个实例阐述了线程同步的实现方法。程序中是否需要多线程,要考虑它是否符合多线程的特点。
  关键词:多线程;类;接口;同步
  中图分类号:TP311.11 文献标识码:A 文章编号:1007-9599 (2013) 02-0000-02
  1 引言
  通常,需要将程序划分为数个独立执行的子任务,这些独立的子任务即所谓的线程。线程是进程中的一个单一连续控制流程。一个进程可以拥有多个并行的线程。多线程序的用途很广泛。一般说来,当程序的某一部分与特定事件或资源捆绑在一块时,程序其他部分的执行不因此而搁置,于是便产生一个和该事件或该资源相关的线程,并且让此线程不干扰主程序的运作。多线程可以减轻系统性能方面的瓶颈,提高CPU的处理器的效率。
  2 线程的创建与生命周期
  2.1 线程的创建
  产生线程最简单的方法,是通过继承class Thread来实现。这个class拥有产生、运行线程的所有的必要机制。在Thread中,最重要的方法是run( ),通过覆写此方法,使线程执行指派的工作。这样,run( )就和程序中的其他线程同时执行。
  2.2 线程的生命周期
  (1)创建状态。一个线程对象被创建。(2)可运行状态。线程获得了CPU的执行时间,便可运行。虽然处于可运行状态,但自定义线程对象并不一定立即运行,其是否运行是由Java的运行系统来协调的。(3)阻塞状态。阻塞状态就是一个线程对象因为人为或系统原因必须暂停运行,以后还可以恢复运行的状态。当下面的几种情况之一发生后,线程对象就由可运行状态进入阻塞状态。一是通过sleep( )让线程进入休眠状态;二是通过suspend( )暂停线程;三是通过wait( )暂停线程;四是线程正在等待某个I/O动作的完成;五是线程试着调用另一个对象的synchronized函数。(4)终止状态。线程的正常结束方式,就是从其run( )中回返。或者是非正常结束,如调用了stop( )。
  3 多线程实现方式
  3.1 通过扩展Thread类来创建多线程
  从程序中可以看出,每个线程分别对应50套服装,它们中间没有其他联系,也就是说,三个线程之间的地位是平等的,不存在谁先谁后的问题,因此,应该是机会均等地得到CPU的处理。但实际上,这三个线程并不一定是交换依次运行,而是在三个线程同时被执行的情况下,有的服装会卖得迟一些,而有的服装会提前卖完,所以,三个线程在真正工作时,有的被分配的CPU的时间多一些,而有的相反要少一些。
  从上可知,通过继承线程类而创建的多线程,在程序上看,代码是一样的,可是在执行中,彼此没有联系,拥有自己的资源。
  3.2 通过实现Runnable接口来创建多线程
  4 线程同步
  一个变量被多个线程访问,会带来冲突的问题,那么就需要相应的机制解决冲突,这样,就引入了synchronized 关键字。以下例说明,A和B两人同管一个帐本,A负责存款事情,B负责取款事情。A使用帐本时,B被禁止使用,反之亦然。程序中是否需要多线程,要考虑它是否符合多线程的特点,多线程操作机制对线程通信和线程管理的强大支持才能有用武之地,这时使用多线程才是最合适的。
  参考文献:
  [1]侯捷.Java编程思想[M].机械工业出版社,2005.
  [2]聂哲,袁梅冷,杨淑萍.Java面向对象程序设计[M].高等教育出版社,2005.
  [3]张居敏.Java程序设计经典教程[M].电子工业出版社,2008.
  [4]印旻.Java与面向对象程序设计教程[M].高等教育出版社,1999.
  [作者简介]白红(1969,11-)女,满族,辽宁省抚顺市人,专业技术职称为高级讲师,大学本科学历,参加过研究生课程进修班的学习,研究方向为计算机应用。
本文由白红等人通过我们顺利发表在【计算机光盘软件与应用】杂志中,字数:1809,经过作者白红同意,为您分享全文,如有疑问,请联系我们!


    更多科技类论文详细信息: 浅议Java多线程程序设计
    http://www.400qikan.com/lunwen/keji/3010.html


    相关专题:税盾 期刊论文发表格式 《计算机光盘软件与应用》相关期刊

    推荐期刊:

  • 北京中医药大学学报
  • 南京政治学院学报
  • 东南国防医药
  • 金山油化纤
  • 金融发展研究
  • 国际经济法学刊
  • 武汉生物工程学院学报
  • 产业经济研究
  • 华西医学
  • 中国高新区


  • 上一篇:基于VB2010的计算器模拟
    下一篇:基于FPGA的手机控制智能密码锁的设计与实现

    认准400期刊网 可信 保障 安全 快速 客户见证 退款保证


    品牌介绍