仓酷云

标题: JAVA编程:转-关于多线程 [打印本页]

作者: 深爱那片海    时间: 2015-1-18 11:55
标题: JAVA编程:转-关于多线程
但是一些大型开发或者是保密型比较高的项目都会用java,原因有2点,一:java是开源的,不怕别人留后门,偷我工具,.net就不一样了,保持微软的一向风格,源代码不公开多线程枫叶国游子2001-07-0416:32:33
我这里能够也许给你先容一下,但关于每种编程模子要看详细的示例是甚么,并且我不成能给你排列一切的代码,请体谅。

实在我们编程只需只管站到对照高的条理,良多事理实在你会发明你已懂了。

就多线程来讲,我们入手下手假想只要两个线程(>2时是否是算数学归结法?)那末假如两个自力的线程会产生甚么呢?

1。当一个线程进进moniter(也就是说站用一个object),另外一个线程只要守候或前往,而我们把前往就称为一种形式,这类形式的英文是Balking。

2。这两个线程能够是有序的实行,而不是让OS来调剂,这时候我们要用一个object来调剂,这类形式称为Scheduler。(这个词及其寄义实在OS中就有)。

3。假如这两个线程同时读一个资本,我们可让他们实行,但假如同时写的话,你闭着眼睛城市晓得大概呈现成绩,这时候我们就要用另外一种形式(Read/WriteLock)。

4。假如一个线程是为另外一个线程服务的话,好比IE中卖力数据传输的线程和界面显现的线程,当一个图片没有传完时,另外一个线程就没法显现,最少是部分没有传完。那末这时候我们要用一个形式称为临盆者和消耗者,英文是Producer-Consumer。

5。两个线程的灭亡也能够不是完整又OS来把持的,这时候我们必要给出一个前提,使得每一个线程在切合前提是才灭亡,也就是有序的灭亡,我们称为Two-PhaseTermination。

那末有这5个线程模子,基础上能够用到年夜多半编程义务中。我必要指出的三点是:

1。从高条理上我们能够再考证是不是含盖了一切的情形。

2。实在形式不是完整流动的大概说象定律一样,而形式能够为分歧的情形举行得当的调剂和组合,目标是为了简便和高效。

3。进修形式是为了具有更好的剖析成绩的才能。

而仿佛这些来自东方的手艺,而且是今朝的,我们有无呢?实在我团体有个勇敢的推想,我以为我们先人的《孙子兵书》就是很好计划形式,由于它切合计划形式必要的基础特性,就是在特定的前提下,用某种特定的体例公道且高效的办理成绩。只不外一是用在军事上,二是完整性方面我们还没研讨。但我以为我们最少没有很好的扩大和举行类比式的使用,不然明天多是我们中国人教本国人甚么是计划形式。

类比的办法实践上是创造或发明的经常使用办法。不知可否让你感到到实在本国的手艺并非那末的奥秘,大概我们从本身的文明傍边发掘出的工具太少了。

P.S.更深一步的研讨你能够参考DougLea.<<ConcurrentProgramminginJava>>.


因为能用到多少功能就用多少,不能用就不用!总的来说:要简单要性能好,可以不用框架。你说java复杂,就是因为你把java(j2ee)与这些框架混在了一起。
作者: 愤怒的大鸟    时间: 2015-1-21 17:15
Java 编程语言的风格十分接近C、C++语言。
作者: 小魔女    时间: 2015-1-27 13:59
另外编写和运行Java程序需要JDK(包括JRE),在sun的官方网站上有下载,thinking in java第三版用的JDK版本是1.4,现在流行的版本1.5(sun称作J2SE 5.0,汗),不过听说Bruce的TIJ第四版国外已经出来了,是专门为J2SE 5.0而写的。
作者: 深爱那片海    时间: 2015-2-3 19:29
任职于太阳微系统的詹姆斯·高斯林等人于1990年代初开发Java语言的雏形,最初被命名为Oak,目标设置在家用电器等小型系统的程序语言
作者: 小女巫    时间: 2015-2-6 00:37
J2SE开发桌面应用软件比起 VC,VB,DEPHI这些传统开发语言来说,优势好象并不明显。J2ME对于初学者来说,好象又有点深奥,而且一般开发者很难有开发环境。
作者: 蒙在股里    时间: 2015-2-8 21:27
Pet Store.(宠物店)是SUN公司为了演示其J2EE编程规范而推出的开放源码的程序,应该很具有权威性,想学J2EE和EJB的朋友不要 错过了。
作者: 简单生活    时间: 2015-2-26 11:04
你可以去承接一些项目做了,一开始可能有些困难,可是你有技术积累,又考虑周全,接下项目来可以迅速作完,相信大家以后都会来找你的,所以Money就哗啦啦的。。。。。。
作者: admin    时间: 2015-3-7 14:40
自从Sun推出Java以来,就力图使之无所不包,所以Java发展到现在,按应用来分主要分为三大块:J2SE,J2ME和J2EE,这也就是Sun ONE(Open Net Environment)体系。J2SE就是Java2的标准版,主要用于桌面应用软件的编程;J2ME主要应用于嵌入是系统开发,如手机和PDA的编程;J2EE是Java2的企业版,主要用于分布式的网络程序的开发,如电子商务网站和ERP系统。
作者: 仓酷云    时间: 2015-3-15 07:31
Java是一种计算机编程语言,拥有跨平台、面向对java
作者: 兰色精灵    时间: 2015-3-17 04:07
在全球云计算和移动互联网的产业环境下,Java更具备了显著优势和广阔前景。
作者: 若天明    时间: 2015-3-23 18:03
你快去找一份Java的编程工作来做吧(如果是在校学生可以去做兼职啊),在实践中提高自己,那才是最快的。不过你得祈祷在公司里碰到一个高手,而且他 还愿意不厌其烦地教你,这样好象有点难哦!还有一个办法就是读开放源码的程序了。我们知道开放源码大都出自高手,他们设计合理,考虑周到,再加上有广大的程序员参与,代码的价值自然是字字珠叽,铿锵有力(对不起,偶最近《金装四大才子》看多了)。
作者: 海妖    时间: 2015-3-27 08:08
Sun公司看见Oak在互联网上应用的前景,于是改造了Oak,于1995年5月以Java的名称正式发布。Java伴随着互联网的迅猛发展而发展,逐渐成为重要的网络编程语言。
作者: 金色的骷髅    时间: 2015-4-2 18:40
接着就是EJB了,EJB就是Enterprise JavaBean, 看名字好象它是Javabean,可是它和Javabean还是有区别的。它是一个体系结构,你可以搭建更安全、更稳定的企业应用。它的大量代码已由中间件(也就是我们常听到的 Weblogic,Websphere这些J2EE服务器)完成了,所以我们要做的程序代码量很少,大部分工作都在设计和配置中间件上。
作者: 分手快乐    时间: 2015-4-11 02:11
至于JDBC,就不用我多说了,你如果用java编过存取数据库的程序,就应该很熟悉。还有,如果你要用Java编发送电子邮件的程序,你就得看看Javamail 了。
作者: 若相依    时间: 2015-4-12 04:43
你可以去承接一些项目做了,一开始可能有些困难,可是你有技术积累,又考虑周全,接下项目来可以迅速作完,相信大家以后都会来找你的,所以Money就哗啦啦的。。。。。。
作者: 飘飘悠悠    时间: 2015-4-14 02:32
你快去找一份Java的编程工作来做吧(如果是在校学生可以去做兼职啊),在实践中提高自己,那才是最快的。不过你得祈祷在公司里碰到一个高手,而且他 还愿意不厌其烦地教你,这样好象有点难哦!还有一个办法就是读开放源码的程序了。我们知道开放源码大都出自高手,他们设计合理,考虑周到,再加上有广大的程序员参与,代码的价值自然是字字珠叽,铿锵有力(对不起,偶最近《金装四大才子》看多了)。
作者: 灵魂腐蚀    时间: 2015-4-16 15:47
吧,现在很流行的Structs就是它的一种实现方式,不过Structs用起来实在是很繁,我们只要学习其精髓即可,我们完全可以设计自己的MVC结构。然后你再研究一下软件Refactoring (重构)和极限XP编程,相信你又会上一个台阶。 做完这些,你不如整理一下你的Java代码,把那些经典的程序和常见的应用整理出来,再精心打造一番,提高其重用性和可扩展性。你再找几个志同道合的朋友成立一个工作室吧
作者: 因胸联盟    时间: 2015-4-25 01:29
吧,现在很流行的Structs就是它的一种实现方式,不过Structs用起来实在是很繁,我们只要学习其精髓即可,我们完全可以设计自己的MVC结构。然后你再研究一下软件Refactoring (重构)和极限XP编程,相信你又会上一个台阶。 做完这些,你不如整理一下你的Java代码,把那些经典的程序和常见的应用整理出来,再精心打造一番,提高其重用性和可扩展性。你再找几个志同道合的朋友成立一个工作室吧
作者: 变相怪杰    时间: 2015-4-27 04:59
设计模式是高级程序员真正掌握面向对象核心思想的必修课。设计模式并不是一种具体"技术",它讲述的是思想,它不仅仅展示了接口或抽象类在实际案例中的灵活应用和智慧
作者: 再现理想    时间: 2015-4-27 13:44
在全球云计算和移动互联网的产业环境下,Java更具备了显著优势和广阔前景。




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