第1页共4页附件2:华中师范大学网络教育学院本科毕业论文(设计)开题报告姓名:__________专业:__计算机科学与技术____学号:____年级:______2010春_________学习中心:____提交日期:______________________论文(设计)选题:Java多线程技术探讨一、Java多线程研究的目的、意义和国内外现状1.1目的提高JAVA的主要应用优势,提高界面程序响应速度和充分利用系统资源,充分利用,更好地表述和解决现实世界的具体实际问题,多线程技术也是是计算机应用开发和程序设计的一个必然发展趋势。1.2意义多线程技术是JAVA应用的主要技术,多线程具有并行机制、交互性能、实时控制等性能。主要的优势有提高界面程序响应速度和充分利用系统资源。通过使用线程,可以将需要大量时间完成的流程在后台完成;而通过在一个程序内部同时执行多个流程,可以充分利用CPU等系统资源,从而最大限度地发挥硬件的性能。在现在的项目开发中,多线程编程技术获得了广泛的使用本文从线程概念、属性、实现方法、优劣势来介绍JAVA的多线程技术。1.3国内外现状在国内外研究Java之前,没有一种主流编程语言能够提供对高级网络编程的固有支持。在其他语言环境中,实现网络程序往往需要深入依赖于操作平台的网络API的技术中去,而Java提供了对网络支持的无平台相关性的完整软件包,使程序员没有必要为系统网络支持的细节而烦恼。Java软件包内在支持的网络协议为TCP/IP,也是当今最流行的广域网/局域网协议。Java有关网络的类及接口定义在java.net包中。客户端软件通常使用java.net包中的核心类Socket与服务器的某个端口建立连接,而服务器第2页共4页程序不同于客户机,它需要初始化一个端口进行监听,遇到连接呼叫,才与相应的客户机建立连接。Java.net包的ServerSocket类包含了编写服务器系统所需的一切。现在的Java的多线程可谓是Java编程的精华之一,运用得当可以极大地改善程序的响应时间,提高程序的并行性。在服务器程序中,由于往往要接收不同客户机的同时请求或命令,因此可以对每个客户机的请求生成一个命令处理线程,同时对各用户的指令做出反应。在一些较复杂的系统中,我们还可以为每个数据库查询指令生成单独的线程,并行对数据库进行操作。实践证明,采用多线程设计可以很好的改善系统的响应,并保证用户指令执行的独立性。由于Java本身是“线程安全”的,因此有一条编程原则是能够独立在一个线程中完成的操作就应该开辟一个新的线程。二、对Java多线程技术的初步认识2.1初步认识:JAVA是一种面向对象的、分布式的、解释的、键壮的、安全的、结构中立的、可移植的、多线程的、动态的语言。Java系统的线程定义:(1)Java系统的线程体现在两个方面:a.结构描述。b.运行方式。(2)用户程序中的main方法就是Java系统默认的一个主线程。执行main方法,就是执行主线程。(3)用户可以定义自己的线程。重写Thread类(或Runnable接口)的run方法。就是定义自己线程的最基本内容,用户所描述的、run中的方法体就是线程体,用户用这种方式告诉Java系统:将要用线程方式运行的就是这个方法体。(4)对用户而言,线程就是Java的一个特殊方法run(),它的执行单位就是Fun的方法体,而且是一个完整的、没有再细分的方法体。(5)对Java系统而言,线程就是对Fun中的方法体(线程体)冉细分,它的执行单位甚至细分到语句(或运行步骤):JAVA的设计思想是建立在当前大多数操作系统都实现了线程调度。JAVA虚拟机的很多任务都依赖线程调度,而且所有的类库都是为多线程设计的。多线程编程的含义是可将程序任务分成几个并行的子任务。2.2拟阅读的书目:【1】李相国等.Java实例精通[M].北京:机械工业出版社,2009.第3页共4页【2】印曼.Java语言与面向对象程序设计[M].北京:清华大学出版社,2002.【3】袁加全.基于Java多线程的有限元并行计算的研究[D].天津:天津工业大学,20052.3搜集资料方向:1.在图书馆查询相关书籍2.在网络上学习现阶段研究的最新成果3.和同学和老师们请教和讨论2.4论文结构框架1.详细介绍Java线程、多线程知识2.对Java多线程问题进行详细的讨论3.进一步深入的提出并讨论实现多线程的各种方式方法4.对每种方法进行讨论并进行可行性论证5.对研究的技术探讨问题进行总结三、研究和撰写计划1、申请论文:2011-12-29至2012-2-15,2、下达任务书:2012-2-16至2012-2-17,3、开题报告:2012-3-1至2012-3-10,4、初稿提交:2012-3-11至2012-4-12,5、定稿提交:2012-4-13至2012-4-14,6、终稿提交:2012-4-15至2012-5-10,7、答辩申请:2012-5-15至2012-5-20,第4页共4页四、个人情况介绍:(所学专业、主要工作经历、工作领域、对论文涉及的专业领域的基本认识等)所学专业:计算机科学与技术主要工作经历:博彦科技工作领域:软件开发工程师JAVA多线程技术是计算机应用开发和程序设计的一个必然发展趋势。五、指导教师意见注:本表可以复制,也可以网上下载。制