java里的关于多线程建立一个线程,建立一个对象,在线程类里面把对象做参数。
main()方法里面,用Services=newService();ThreadAtA=newThread(s);tA.start();是什么意思!!...
main()方法里面,
用Service s=new Service();
ThreadA tA=new Thread(s);
tA.start();是什么意思!! 展开
用Service s=new Service();
ThreadA tA=new Thread(s);
tA.start();是什么意思!! 展开
1个回答
展开全部
这要看你这两个线程使用是不是同一个对象,我写个例子,你仔细看一下
public class Test {
class MyThreads implements Runnable{
private int flag = 0;
public MyThreads(){
}
@Override
public void run() {
System.out.println("flag = " + (++flag));
}
}
public Test(){
System.out.println("两条线程同用一个对象");
MyThreads myThread = new MyThreads();
new Thread(myThread).start();
new Thread(myThread).start();
}
public Test(int i){
System.out.println("两条线程使用不同对象");
MyThreads myThread = new MyThreads();
new Thread(myThread).start();
MyThreads myThread2 = new MyThreads();
new Thread(myThread2).start();
}
public static void main(String[] args) {
Test t = new Test();
try {
//线程输出太快,先暂停一会
Thread.currentThread().sleep(2000);
} catch (InterruptedException e) {
e.printStackTrace();
}
Test t2 = new Test(1);
}
}
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询
广告 您可能关注的内容 |