了解下JAVA的Java多线程编程实战之基本
j2EE和asp比较,其实也没什么比的,原因和我上面说那些比较差不了多少,也是稳定性,安全性,J2EE比asp高,速度上比不过asp,asp也是延续着它的拖拽控件的方法,提高速度。在Java程序中利用多线程要比在C或C++中简单很多,这是由于Java编程言语供应了言语级的撑持。本文经由过程复杂的编程示例来讲明Java程序中的多线程是何等直不雅。读完本文今后,用户应当可以编写复杂的多线程程序。
为何会列队守候?
上面的这个复杂的Java程序完成四项不相干的义务。如许的程序有单个把持线程,把持在这四个义务之间线性地挪动。别的,由于所需的资本—打印机、磁盘、数据库和显现屏--因为硬件和软件的限定都有内涵的埋伏工夫,以是每项义务都包括分明的守候工夫。因而,程序在会见数据库之前必需守候打印机完成打印文件的义务,等等。假如您正在守候程序的完成,则这是对盘算资本和您的工夫的一种低劣利用。改善此程序的一种办法是使它成为多线程的。四项不相干的义务
classmyclass{
staticpublicvoidmain(Stringargs[]){
print_a_file();
manipulate_another_file();
access_database();
draw_picture_on_screen();
}
}在本例中,每项义务在入手下手之前必需守候前一项义务完成,即便所触及的义务绝不相干也是如许。可是,在实际生存中,我们常常利用多线程模子。我们在处置某些义务的同时也能够让孩子、夫妇和怙恃完成其余义务。比方,我在写信的同时大概打发我的儿子往邮局买邮票。用软件术语来讲,这称为多个把持(或实行)线程。能够用两种分歧的办法来取得多个把持线程:
多个历程
在年夜多半操纵体系中都能够创立多个历程。当一个程序启动时,它能够为行将入手下手的每项义务创立一个历程,并同意它们同时运转。当一个程序因守候收集会见或用户输出而被堵塞时,另外一个程序还能够运转,如许就增添了资本使用率。可是,依照这类体例创立每一个历程要支付必定的价值:设置一个历程要占用相称一部分处置器工夫和内存资本。并且,年夜多半操纵体系不同意历程会见其他历程的内存空间。因而,历程间的通讯很不便利,而且也不会将它本人供应给简单的编程模子。
线程
线程也称为轻型历程(LWP)。由于线程只能在单个历程的感化域内举动,以是创立线程比创立历程要便宜很多。如许,由于线程同意合作和数据互换,而且在盘算资本方面十分便宜,以是线程比历程更可取。线程必要操纵体系的撑持,因而不是一切的呆板都供应线程。Java编程言语,作为相称新的一种言语,已将线程撑持与言语自己合为一体,如许就对线程供应了健旺的撑持。
市场分额,java比asp高一点,因为C#是仿照java开发的,所以哦C#能做的java都能做到,但是java能做的,C#不一定都能做到。毕竟是抄袭吗。 你快去找一份Java的编程工作来做吧(如果是在校学生可以去做兼职啊),在实践中提高自己,那才是最快的。不过你得祈祷在公司里碰到一个高手,而且他 还愿意不厌其烦地教你,这样好象有点难哦!还有一个办法就是读开放源码的程序了。我们知道开放源码大都出自高手,他们设计合理,考虑周到,再加上有广大的程序员参与,代码的价值自然是字字珠叽,铿锵有力(对不起,偶最近《金装四大才子》看多了)。 是一种使网页(Web Page)由静态(Static)转变为动态(Dynamic)的语言 是一种将安全性(Security)列为第一优先考虑的语言 是一种将安全性(Security)列为第一优先考虑的语言 还好,SUN提供了Javabean可以把你的JSP中的 Java代码封装起来,便于调用也便于重用。 是一种使网页(Web Page)产生生动活泼画面的语言 是一种使网页(Web Page)由静态(Static)转变为动态(Dynamic)的语言 在全球云计算和移动互联网的产业环境下,Java更具备了显著优势和广阔前景。 你一定会高兴地说,哈哈,原来成为Java高手就这么简单啊!记得Tomjava也曾碰到过一个项目经理,号称Java很简单,只要三个月就可以学会。 当然你也可以参加一些开源项目,一方面可以提高自己,另一方面也是为中国软件事业做贡献嘛!开发者在互联网上用CVS合作开发,用QQ,MSN,E-mail讨论联系,天南海北的程序员分散在各地却同时开发同一个软件,是不是很有意思呢? Java是一个纯的面向对象的程序设计语言,它继承了 C++语言面向对象技术的核心。Java舍弃了C ++语言中容易引起错误的指针(以引用取代)、运算符重载(operator overloading) 你可以去承接一些项目做了,一开始可能有些困难,可是你有技术积累,又考虑周全,接下项目来可以迅速作完,相信大家以后都会来找你的,所以Money就哗啦啦的。。。。。。 你就该学一学Servlet了。Servlet就是服务器端小程序,他负责生成发送给客户端的HTML文件。JSP在执行时,也是先转换成Servlet再运行的。虽说JSP理论上可以完全取代Servlet,这也是SUN推出JSP的本意,可是Servlet用来控制流程跳转还是挺方便的,也令程序更清晰。接下来你应该学习一下Javabean了,可能你早就看不管JSP在HTML中嵌Java代码的混乱方式了,这种方式跟ASP又有什么区别呢? 你快去找一份Java的编程工作来做吧(如果是在校学生可以去做兼职啊),在实践中提高自己,那才是最快的。不过你得祈祷在公司里碰到一个高手,而且他 还愿意不厌其烦地教你,这样好象有点难哦!还有一个办法就是读开放源码的程序了。我们知道开放源码大都出自高手,他们设计合理,考虑周到,再加上有广大的程序员参与,代码的价值自然是字字珠叽,铿锵有力(对不起,偶最近《金装四大才子》看多了)。 你就该学一学Servlet了。Servlet就是服务器端小程序,他负责生成发送给客户端的HTML文件。JSP在执行时,也是先转换成Servlet再运行的。虽说JSP理论上可以完全取代Servlet,这也是SUN推出JSP的本意,可是Servlet用来控制流程跳转还是挺方便的,也令程序更清晰。接下来你应该学习一下Javabean了,可能你早就看不管JSP在HTML中嵌Java代码的混乱方式了,这种方式跟ASP又有什么区别呢? 让你能够真正掌握接口或抽象类的应用,从而在原来的Java语言基础上跃进一步,更重要的是,设计模式反复向你强调一个宗旨:要让你的程序尽可能的可重用。 是一种简化的C++语言 是一种安全的语言,具有阻绝计算机病毒传输的功能 自从Sun推出Java以来,就力图使之无所不包,所以Java发展到现在,按应用来分主要分为三大块:J2SE,J2ME和J2EE,这也就是Sun ONE(Open Net Environment)体系。J2SE就是Java2的标准版,主要用于桌面应用软件的编程;J2ME主要应用于嵌入是系统开发,如手机和PDA的编程;J2EE是Java2的企业版,主要用于分布式的网络程序的开发,如电子商务网站和ERP系统。 应用在电视机、电话、闹钟、烤面包机等家用电器的控制和通信。由于这些智能化家电的市场需求没有预期的高,Sun公司放弃了该项计划。随着1990年代互联网的发展
页:
[1]