2-5问题

2-5问题

print pr= new print();
		Thread t1=new Thread(pr);
		t1.start();
		print pr2= new print();
		Thread t2=new Thread(pr2);
		t2.start();
		
		
		
		print pr= new print();
		Thread t1=new Thread(pr);
		t1.start();
		
		Thread t2=new Thread(pr);
		t2.start();
		
		这两种写法没有区别吗?


正在回答

登陆购买课程后可参与讨论,去登陆

1回答

是有区别的,第二种方式就是两个线程共享一个run方法,适合多个线程处理同一个资源的情况;第一种方式是两个线程分别执行两个run方法,就是每个线程处理一个资源。祝学习愉快!

  • the__sky123 提问者 #1
    但是如果把int i=1 放在run()方法中,输出结果是一样的,都是二十句
    2018-03-06 11:40:32
  • 一叶知秋519 回复 提问者 the__sky123 #2
    如果是共享变量,就应该是类的成员变量,把i定义为成员变量是共享一个资源。祝学习愉快!
    2018-03-06 13:49:29
问题已解决,确定采纳
还有疑问,暂不采纳

恭喜解决一个难题,获得1积分~

来为老师/同学的回答评分吧

0 星
请稍等 ...
意见反馈 帮助中心 APP下载
官方微信

在线咨询

领取优惠

免费试听

领取大纲

扫描二维码,添加
你的专属老师