仓酷云

标题: 了解下JAVA的Java多线程编程开端 [打印本页]

作者: 小妖女    时间: 2015-1-18 11:33
标题: 了解下JAVA的Java多线程编程开端
大型的应用一般不会用这些框架(因为性能考虑);开发人员根据需要选择用一些框架,也可以不选用框架;不用框架并不代表要自己写框架;修改框架的可能性更小。
甚么是多线程编程
多线程编程手艺是Java言语的主要特性。多线程编程的寄义是将程序义务分红几个并行的子义务。出格是在收集编程中,你会发明良多功效是能够并发实行的。好比收集传输速率较慢、用户输出速率较慢,你能够用两个自力的线程往完成这两个功效,而不影响一般的显现或别的功效。
多线程是与单线程对照而言的,一般的Windows接纳单线程程序布局,其事情道理是:主程序有一个动静轮回,不休从动静行列中读进动静来决意下一步所要干的事变,通常为针对一个函数,只要等这个函数实行完以后,主程序才干吸收别的的动静来实行。好比子函数功效是在读一个收集数据,或读一个文件,只要等读完这个数据或文件才干吸收下一个动静。在实行这个子函数过程当中你甚么也不克不及干。但常常读收集数据和守候用户输出有良多工夫处于守候形态,多线程使用这个特性将义务分红多个并发义务后,就能够办理这个成绩。
Java中的线程类
要学会Java中的多线程编程,就得晓得怎样完成撑持多线程的类。Java中完成多线程的类有两种办法:
1.扩大java.lang.Thread类,用它掩盖Thread类的run办法。
2.天生完成java.lang.Runnable接口的类并将别的的实例与java.lang.Thread实例相干联。
Thread类是卖力向别的类供应线程撑持的最次要的类,要利用一个类具有线程功效,在Java中只需复杂地从Thread类派生一个子类就能够了扩大Thread类,如printThread.java。
上面我们将经由过程实例来先容怎样利用这两种办法编写本人的多线程使用程序。
创立java.lang.Thread类的子类
Thread类最主要的办法是run办法。run办法是新线程实行的办法,因而天生java.lang.Thread的子类时,必需有响应的run办法。
//PrintThread.java
publicclassPrintThreadextendsThread//承继Tread类
privateintcount=0//界说一个count变量用于统计打印的次数并共享变量
publicstaticvoidmainStringargs //main办法入手下手
PrintThreadp=newPrintThread //创立一个线程实例
p.start //实行线程
for{;;} //主线程main办法实行一个轮回,for实行一个逝世轮回

count++
System.out.printcount+″:Main
″ //主线程中打印count+“main”变量的值,并换行

publicvoidrun //线程类必需有的run()办法
for{;;} 

count++
System.out.printcount+″:Thread
″ 
下面这段程序即是承继java.lang.Tread并掩盖run的办法。用Java假造机启动程序时,这个程序会师长教师成一个线程并挪用程序主类的main办法。这个程序中的main办法天生新线程,毗连打印“Thread”。在启动线程以后,主线程持续打印“Main”。
<p>编译并实行这个程序,然后当即按“Ctrl+C”键中止程序,你会看到下面所述的两个线程不休打印出:XXX:main…..XXX:Thread….XXX代表的是数字,也就是下面count的值 。在笔者的呆板上,分歧时候这两个线程打印的次数纷歧样,先打印20个main(也就是先实行20次主线程)再打印出50次Thread,然后再打印main……
你说是sun公司对她研究的透还是微软?针对自己工具开发的.net网页编程性能上肯定会站上风的。
作者: 柔情似水    时间: 2015-1-21 10:11
你就该学一学Servlet了。Servlet就是服务器端小程序,他负责生成发送给客户端的HTML文件。JSP在执行时,也是先转换成Servlet再运行的。虽说JSP理论上可以完全取代Servlet,这也是SUN推出JSP的本意,可是Servlet用来控制流程跳转还是挺方便的,也令程序更清晰。接下来你应该学习一下Javabean了,可能你早就看不管JSP在HTML中嵌Java代码的混乱方式了,这种方式跟ASP又有什么区别呢?
作者: 金色的骷髅    时间: 2015-1-30 14:39
多重继承(以接口取代)等特性,增加了垃圾回收器功能用于回收不再被引用的对象所占据的内存空间,使得程序员不用再为内存管理而担忧。在 Java 1.5 版本中,Java 又引入了泛型编程(Generic Programming)、类型安全的枚举、不定长参数和自动装/拆箱等语言特性。
作者: 冷月葬花魂    时间: 2015-2-16 06:48
[url]http://www.jdon.com/[/url]去下载,或到同济技术论坛的服务器[url]ftp://nro.shtdu.edu.cn[/url]去下,安装上有什么问题,可以到论坛上去提问。
作者: 深爱那片海    时间: 2015-3-5 00:16
关于设计模式的资料,还是向大家推荐banq的网站 [url]http://www.jdon.com/[/url],他把GOF的23种模式以通俗易懂的方式诠释出来,纯Java描述,真是经典中的经典。
作者: 再现理想    时间: 2015-3-5 21:24
是一种简化的C++语言 是一种安全的语言,具有阻绝计算机病毒传输的功能
作者: 若天明    时间: 2015-3-6 09:14
[url]http://www.jdon.com/[/url]去下载,或到同济技术论坛的服务器[url]ftp://nro.shtdu.edu.cn[/url]去下,安装上有什么问题,可以到论坛上去提问。
作者: 不帅    时间: 2015-3-6 23:45
Sun公司看见Oak在互联网上应用的前景,于是改造了Oak,于1995年5月以Java的名称正式发布。Java伴随着互联网的迅猛发展而发展,逐渐成为重要的网络编程语言。
作者: 乐观    时间: 2015-3-13 22:42
应用在电视机、电话、闹钟、烤面包机等家用电器的控制和通信。由于这些智能化家电的市场需求没有预期的高,Sun公司放弃了该项计划。随着1990年代互联网的发展
作者: 山那边是海    时间: 2015-3-20 20:51
你现在最缺的是实际的工作经验,而不是书本上那些凭空想出来的程序。
作者: 莫相离    时间: 2015-3-20 23:25
是一种使网页(Web Page)由静态(Static)转变为动态(Dynamic)的语言
作者: 精灵巫婆    时间: 2015-3-27 10:10
至于JDBC,就不用我多说了,你如果用java编过存取数据库的程序,就应该很熟悉。还有,如果你要用Java编发送电子邮件的程序,你就得看看Javamail 了。
作者: 蒙在股里    时间: 2015-3-31 03:20
Java 不同于一般的编译执行计算机语言和解释执行计算机语言。它首先将源代码编译成二进制字节码(bytecode),然后依赖各种不同平台上的虚拟机来解释执行字节码。从而实现了“一次编译、到处执行”的跨平台特性。
作者: 简单生活    时间: 2015-4-3 04:02
Java是一种计算机编程语言,拥有跨平台、面向对java
作者: 小女巫    时间: 2015-4-6 02:11
Java语言支持Internet应用的开发,在基本的Java应用编程接口中有一个网络应用编程接口(java net),它提供了用于网络应用编程的类库,包括URL、URLConnection、Socket、ServerSocket等。Java的RMI(远程方法激活)机制也是开发分布式应用的重要手段。
作者: 灵魂腐蚀    时间: 2015-4-6 09:04
是一种为 Internet发展的计算机语言
作者: 飘飘悠悠    时间: 2015-4-10 18:28
Java 不同于一般的编译执行计算机语言和解释执行计算机语言。它首先将源代码编译成二进制字节码(bytecode),然后依赖各种不同平台上的虚拟机来解释执行字节码。从而实现了“一次编译、到处执行”的跨平台特性。
作者: 老尸    时间: 2015-4-22 04:18
Sun公司看见Oak在互联网上应用的前景,于是改造了Oak,于1995年5月以Java的名称正式发布。Java伴随着互联网的迅猛发展而发展,逐渐成为重要的网络编程语言。
作者: 只想知道    时间: 2015-4-22 06:37
《JAVA语言程序设计》或《JAVA从入门到精通》这两本书开始学,等你编程有感觉的时候也可以回看一下。《JAVA读书笔记》这本书,因为讲的代码很多,也很容易看懂,涉及到面也到位。是你学习技术巩固的好书,学完后就看看《JAVA编程思想》这本书,找找一个自己写的代码跟书上的代码有什么不一样。
作者: 海妖    时间: 2015-4-25 03:13
Sun公司看见Oak在互联网上应用的前景,于是改造了Oak,于1995年5月以Java的名称正式发布。Java伴随着互联网的迅猛发展而发展,逐渐成为重要的网络编程语言。




欢迎光临 仓酷云 (http://ckuyun.com/) Powered by Discuz! X3.2