最赞回答 / 慕勒3175023
舞台是一个线程1,两个军队是舞台线程过程中发出的线程1.1和1.2, 1与1.1和1.2的进行是相互独立的,1休眠的同时1.1和1.2是还可以进行的,脑海中想想一个画面,一个向下进行的箭头(1)在某一阶段向左伸出了两条新箭头(1.1和1.2),1在向下的同时1.1和1.2也在向左进行,1向下的进行因休眠停止了是不会影响向左的1.1与1.2的进行
2016-07-21
最赞回答 / Duncan_未来终于到来
就好比你去银行取钱(synchronized) 你想取10000块,但是银行只有8000块 你就会在它提供的休息室(wait Set)等待,待其他人执行完业务后会叫你(notify()),你就可以重新去排队竞争取钱,如果竞争到资源就可以再判断此时银行是否有10000块能让你取,如果可以就能顺利执行完临界区的代码,如果不可以就又去到waitSet等待被唤醒...大概就是这么个意思
2016-07-15
最新回答 / 予远方
肯定是不行的。start方法是开启一个线程的,它会去调用run方法执行线程方法。但是主程序不会因为执行线程方法等待下去,主程序会继续往下执行的。而run方法只是一个普通的方法。假设能够直接调用run方法,那么主程序会跳到run方法中执行,直到run方法执行完毕才会继续往下执行的,这样一来就达不到线程的目的了:提高执行效率了。
2016-06-25
最赞回答 / FovLegend
写成 Thread actor = new Actor(); 的好处是 直接用 Thread 类对Actor的实例actor进行向上转型,方便后面actor调用Thread类的方法。 你用 Actor actor = new Actor(); 也可以,只是后面再用到Thread的方法时,你还是要把actor转型成Thread。
2016-06-23
最新回答 / 12v8
这个等到后边你学习了同步机制就知道了,实现的方式需要一个this关键字,而继承的时候你在用this的时候,因为创建了多个实例化对象,就不能用this了,涉及到共享数据.共享数据只能有一个.这里给你看个代码望采纳:package com.atguigu.java;//使用实现Runnable接口的方式售票/* * 此程序存在线程的安全问题,打印车票时,会出现重票,错票 * 1.线程安全问题存在的原因? * 由于一个线程在操作共享数据过程中,未执行完毕的情况下,另外的线程参与进来,导致 * 共享数据存在了...
2016-06-23