class A
{
public aa()
{
bb();
.....
.....
}
}class B
{
public bb()
{
}
}
我在执行aa()时怎样让bb()转到另外一个线程中执行,而不是先执行完了bb()中的代码,在执行aa()中的。就好像是让aa()和bb()同时执行,而不是一个先一个 后??
{
public aa()
{
bb();
.....
.....
}
}class B
{
public bb()
{
}
}
我在执行aa()时怎样让bb()转到另外一个线程中执行,而不是先执行完了bb()中的代码,在执行aa()中的。就好像是让aa()和bb()同时执行,而不是一个先一个 后??
public void bb(){
System.out.println("----bb()正在执行--------");
}
public void run(){
while(true){
bb();
}
}
}
-------------------------------------------------------------------------------
class A{
Thread th=new Thread(new B());
public void aa(){
th.start();
while(true){
System.out.println("---------aa()正在执行----------");
}
}
public static void main(String args[]){
A a=new A();
a.aa();
}
}
----------------------------------------------------------执行结果------
----bb()正在执行--------
----bb()正在执行--------
----bb()正在执行--------
----bb()正在执行--------
---------aa()正在执行----------
----bb()正在执行--------
---------aa()正在执行----------
----bb()正在执行--------
---------aa()正在执行----------
----bb()正在执行--------
---------aa()正在执行----------
----bb()正在执行--------
---------aa()正在执行----------
---------aa()正在执行----------
---------aa()正在执行----------
---------aa()正在执行----------
---------aa()正在执行----------
---------aa()正在执行----------
---------aa()正在执行----------
---------aa()正在执行----------
---------aa()正在执行----------
{
public aa()
{
new Thread() {
public void run(){
new B().bb(); // 此句在新线程中创建 B 对象,并执行它的 bb()
}
}.start(); // 此句创建一个线程,并启动它
.....
.....
}
}class B
{
public bb()
{
}
}
new Thread() {
public void run({
new B().bb(); // 此句在新线程中创建 B 对象,并执行它的 bb()
}
}).start(); // 此句创建一个线程,并启动它
new Thread({
public void run(){
new B().bb(); // 此句在新线程中创建 B 对象,并执行它的 bb()
}
}).start(); // 此句创建一个线程,并启动它
new Thread(new Runnable(){
public void run(){
new B().bb();
}}).start();
这样就可以了,用一个Runnable接口去构造一个线程对象