黑马程序员技术交流社区
标题:
怎么做这题目
[打印本页]
作者:
huangweicong
时间:
2016-10-18 00:49
标题:
怎么做这题目
* 声明一个共享数组,起两个线程,
两个线程分别隔一段时间(可以写一个随机数),给数组中添加数据,
每一个线程为数组添加3个数据即可。
作者:
gyy
时间:
2016-10-18 00:57
简单的并发写?加一个synchronize就好了,不知道你哪里不清楚呢
作者:
fdzx0707fh
时间:
2016-10-18 23:23
用sleep暂停线程 用计数器判断是否退出循环。
作者:
清风小雨
时间:
2016-10-19 18:54
以前写的给你参考参考
class RunDemo implements Runnable{
private static double[] num = null;
private int count = 6;
public RunDemo(){
this.num = new double[count];
}
@Override
public void run() {
// TODO Auto-generated method stub
for(int i=0;i<3;i++){
this.set();
//System.out.println("num["+i+"]:"+this.num[i]);
}
}
public synchronized void set(){
if(this.count > 0){
try {
Thread.sleep(300);
} catch (InterruptedException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
count--;
this.num[this.num.length -(this.count+1)] = this.getNum();
System.out.println(Thread.currentThread().getName()+"-->num["+(this.num.length -(this.count+1))+"]:"
+this.num[this.num.length -(this.count+1)]);
}
}
public double getNum(){
return Math.round(Math.random()*30+1+50)/100.0;
}
}
public class Test7 {
/**
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
RunDemo r = new RunDemo();
Thread t1 = new Thread(r);
Thread t2 = new Thread(r);
t1.start();
t2.start();
}
}
作者:
蓝光四号
时间:
2016-10-19 21:51
还没学 ,,,
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2