线程作业5-3
package com.imooc.test;
import com.imooc.thread.GenerateWeather;
import com.imooc.thread.ReadWeather;
import com.imooc.thread.Weather;
public class WeatherTest {
public static void main(String[] args) {
Weather bank=new Weather();
//创建线程对象
GenerateWeather a=new GenerateWeather();//实例化线程
ReadWeather b=new ReadWeather();//实例化线程
Thread save=new Thread(a);
Thread draw=new Thread(b);
draw.start();
save.start();;
try {
save.join();
draw.join();
} catch (InterruptedException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}
package com.imooc.thread;
public class GenerateWeather extends Weather implements Runnable{
public Weather wea=new Weather();//实例化Weather对象
public void run(){
/* try {
Thread.sleep(5000);
} catch (InterruptedException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}*/
wea.generate();//调用generate方法
}
}
package com.imooc.thread;
public class ReadWeather extends Weather implements Runnable{
public Weather wea=new Weather();//实例化Weather对象
public void run(){
/*try {
Thread.sleep(1000);
} catch (InterruptedException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}*/
wea.read();//调用read方法
}
}
package com.imooc.thread;
import java.util.Random;
public class Weather {
private static int tempureture;//表示温度
private static int hunidity;//表示湿度
public Weather(){
}
public Weather(int tempureture,int hunidity){//
this.setHunidity(hunidity);
this.setTempureture(tempureture);
}
public int getTempureture() {
return tempureture;
}
public void setTempureture(int tempureture) {
this.tempureture = tempureture;
}
public int getHunidity() {
return hunidity;
}
public void setHunidity(int hunidity) {
this.hunidity = hunidity;
}
public synchronized void generate(){
for(int i=0;i<100;i++){
tempureture=((int)(1+Math.random()*100));//使用random获取随机数
hunidity=((int)(1+Math.random()*100));//使用random获取随机数
System.out.println("生成天气数据[温度:"+getTempureture()+",湿度"+getHunidity()+"]");
}
}
public void read(){
for(int i=0;i<100;i++){
System.out.println("读取天气数据[温度:"+getTempureture()+",湿度"+getHunidity()+"]");
}
}
这样有一部分可以同步,一部分不能同步,而且加入sleep后就完全不能同步了。56
收起
正在回答
2回答
你好!你的作业已经批复了,请查看作业批复文档,里面有对你的作业的详细批复。祝学习愉快!
Android零基础入门2018版
- 参与学习 人
- 提交作业 5461 份
- 解答问题 7235 个
此次推出的专题为Android攻城狮培养计划的第一部分语法与界面基础篇,将带大家从0开始学习Android开发。
了解课程
恭喜解决一个难题,获得1积分~
来为老师/同学的回答评分吧
0 星