A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

l939 中级黑马 2014-3-11 21:24:06
21#
德玛西亚,继续回帖,概率啊,求加分~~~~~~
回复 使用道具 举报
l939 中级黑马 2014-3-11 21:25:07
22#
如此好的活动。。。我擦嘞,坑爹么,来分啊有木有- -
回复 使用道具 举报
线程的生命周期
Thread类内部有个public的枚举Thread.State,里边将线程的状态分为:
     NEW-------新建状态,至今尚未启动的线程处于这种状态。
     RUNNABLE-------运行状态,正在 Java 虚拟机中执行的线程处于这种状态。
     BLOCKED-------阻塞状态,受阻塞并等待某个监视器锁的线程处于这种状态。
     WAITING-------冻结状态,无限期地等待另一个线程来执行某一特定操作的线程处于这种状态。
     TIMED_WAITING-------等待状态,等待另一个线程来执行取决于指定等待时间的操作的线程处于这种状态。
     TERMINATED-------已退出的线程处于这种状态
回复 使用道具 举报
洋葱骑士 发表于 2014-3-11 21:21
进程与线程的区别:
1.进程有独立的进程空间,进程中的数据存放空间(堆空间和栈空间)是独立的。
2.线程 ...

打包zip,不按格式不给分
回复 使用道具 举报

回帖奖励 +1

好吧 真的一分都不中啊
回复 使用道具 举报
朱神必 发表于 2014-3-11 21:25
打包zip,不按格式不给分

不是回复就有分吗

点评

我说的是线程知识要打包zip,这个回复的分只是附带加的。  发表于 2014-3-11 21:29
回复 使用道具 举报
单单是线程这一块?

点评

恩,打包zip  发表于 2014-3-11 21:31
回复 使用道具 举报
join方法:调用join方法的线程对象强制运行,该线程强制运行期间,其他线程无法运行,必须等到该线程结束后其他线程才可以运行。
有人也把这种方式成为联合线程

join方法的重载方法:
join(long millis):
join(long millis,int nanos):
通常很少使用第三个方法:
程序无须精确到一纳秒;
计算机硬件和操作系统也无法精确到一纳秒;
回复 使用道具 举报
顶一个,,,,,,,
回复 使用道具 举报
当多条语句在操作同一个线程共享数据时,一个线程对多条语句只执行了一部分,还没有执行完,另一个线程参与进来执行。导致共享数据的错误。

解决办法:
对多条操作共享数据的语句,只能让一个线程都执行完。在执行过程中,其他线程不可以参与执行。
回复 使用道具 举报
放弃了,不玩了,不给分没动力
回复 使用道具 举报
l939 中级黑马 2014-3-11 21:30:23
32#
说好的回帖就有分呢????
回复 使用道具 举报

回帖奖励 +1

{:3_56:}都放到word文档里了。上传了,分享给大家。代码也在里面,都可以运行

多线程.zip

288.51 KB, 下载次数: 442

评分

参与人数 1技术分 +2 收起 理由
朱神必 + 2 很给力!

查看全部评分

回复 使用道具 举报 1 0

回帖奖励 +1


好活动,支持!!!
回复 使用道具 举报

回帖奖励 +1


哦,那好吧,我放弃了不玩了。
回复 使用道具 举报
l939 中级黑马 2014-3-11 21:32:13
36#
擦勒,再来一分吧,亲~~~~
回复 使用道具 举报

好活动必须顶~~~!!!!!!!!!!!!!!! 顶一下吧 加点分
回复 使用道具 举报

好活动,支持!!!
回复 使用道具 举报
l939 中级黑马 2014-3-11 21:34:11
39#
诶,所谓的10次机会,10%概率,意思是只有一次水贴得分的机会么:funk:

点评

10次机会指的是最多能获得10技术分,与水贴无关  发表于 2014-3-11 21:55
回复 使用道具 举报
打个比方:一个object就像一个大房子,大门永远打开。房子里有很多房间(也就是方法)。这些房间有上锁的(synchronized方法),和不上锁之分(普通方法)。房门口放着一把钥匙(key),这把钥匙可以打开所有上锁的房间。另外我把所有想调用该对象方法的线程比喻成想进入这房子某个房间的人。所有的东西就这么多了,下面我们看看这些东西之间如何作用的。

  在此我们先来明确一下我们的前提条件。该对象至少有一个synchronized方法,否则这个key还有啥意义。当然也就不会有我们的这个主题了。

  一个人想进入某间上了锁的房间,他来到房子门口,看见钥匙在那儿(说明暂时还没有其他人要使用上锁的房间)。于是他走上去拿到了钥匙,并且按照自己的计划使用那些房间。注意一点,他每次使用完一次上锁的房间后会马上把钥匙还回去。即使他要连续使用两间上锁的房间,中间他也要把钥匙还回去,再取回来。

  因此,普通情况下钥匙的使用原则是:“随用随借,用完即还。”

  这时其他人可以不受限制的使用那些不上锁的房间,一个人用一间可以,两个人用一间也可以,没限制。但是如果当某个人想要进入上锁的房间,他就要跑到大门口去看看了。有钥匙当然拿了就走,没有的话,就只能等了。

  要是很多人在等这把钥匙,等钥匙还回来以后,谁会优先得到钥匙?Not guaranteed。象前面例子里那个想连续使用两个上锁房间的家伙,他中间还钥匙的时候如果还有其他人在等钥匙,那么没有任何保证这家伙能再次拿到。 (JAVA规范在很多地方都明确说明不保证,象Thread.sleep()休息后多久会返回运行,相同优先权的线程那个首先被执行,当要访问对象的锁被释放后处于等待池的多个线程哪个会优先得到,等等。我想最终的决定权是在JVM,之所以不保证,就是因为JVM在做出上述决定的时候,绝不是简简单单根据一个条件来做出判断,而是根据很多条。而由于判断条件太多,如果说出来可能会影响JAVA的推广,也可能是因为知识产权保护的原因吧。SUN给了个不保证就混过去了。无可厚非。但我相信这些不确定,并非完全不确定。因为计算机这东西本身就是按指令运行的。即使看起来很随机的现象,其实都是有规律可寻。学过计算机的都知道,计算机里随机数的学名是伪随机数,是人运用一定的方法写出来的,看上去随机罢了。另外,或许是因为要想弄的确定太费事,也没多大意义,所以不确定就不确定了吧。)
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马