日期:2014-05-20  浏览次数:20580 次

菜鸟 请教一个问题 关于线程的!~
问题是这样的:
有两个线程:A和B,每个线程里我写了两个for循环,即(伪代码,大概是这个意思),
Java code

public void fun1(){
new Thread A{
public synchronized void run(){
for(){循环1}
for(){循环2}
}
}.start();
}

public void fun2(){
new Thread B{
public synchronized void run(){
for(){循环3}
for(){循环4}
}
}.start();
}

public static void main(String[] args)
{
  fun1();
  fun2();
}



循环1和循环3里面的代码进行数据通信,循环2和循环4里面的代码进行通信,请问这样写有什么问题吗?
一个线程里可以有多个for或者while循环吗?可以的话就是按序执行吗?

------解决方案--------------------
public synchronized void run(){ //这里的synchronized有意义吗?

循环1和循环3里面的代码进行数据通信,循环2和循环4里面的代码进行通信,请问这样写有什么问题吗?
关键看你的1和3,2和4怎么通信,互相不影响问题不大

一个线程里可以有多个for或者while循环吗?可以的话就是按序执行吗?
可以,当然是按顺序了