|
马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有帐号?立即注册
x
大型的应用一般不会用这些框架(因为性能考虑);开发人员根据需要选择用一些框架,也可以不选用框架;不用框架并不代表要自己写框架;修改框架的可能性更小。
甚么是多线程编程
多线程编程手艺是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网页编程性能上肯定会站上风的。 |
|