5-1線程間通信課後練習疑問

5-1線程間通信課後練習疑問

package weather;

public class Weather
{
    private double hot;
    private double wet;

    public Weather() {
    }

    public Weather(double hot, double wet) {
        setWet(wet);
        setHot(hot);
    }

    public double getHot() {
        return hot;
    }

    public void setHot(double hot) {
        this.hot = hot;
    }

    public double getWet() {
        return wet;
    }

    public void setWet(double wet) {
        this.wet = wet;
    }

    public void create() {
        System.out.println("天氣數據" + '\n' + "溫度:" + this.getHot() + '\n' + "溼度:" + this.getWet() + "%");
    }
}
package weather;

public class Read implements Runnable
{
    Weather weather;

    public Read(Weather weather) {
        this.weather = weather;
    }

    @Override
    public void run() {
        for (int i = 0; i < 100; i++) {
            weather.create();
            try {
                Thread.sleep(100);
            } catch (InterruptedException e) {
                e.printStackTrace();
            }
        }
    }

}
package weather;

public class Create implements Runnable
{
    Weather weather;

    public Create(Weather weather) {
        this.weather = weather;
    }

    @Override
    public void run() {

        for (int i = 0, n = 90; i < 50; i++, n -= 5) {
            weather.setHot(i);
            weather.setWet(n);
            try {
                Thread.sleep(5000);
            } catch (InterruptedException e) {
                e.printStackTrace();
            }
        }
    }

}
package weather;

public class Test
{
    public static void main(String[] args) {
        Weather weather = new Weather();
        new Thread(new Create(weather)).start();
        new Thread(new Read(weather)).start();
    }
}

並未正常終止程序

正在回答 回答被采纳积分+1

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

1回答
一叶知秋519 2017-09-25 09:46:14

我运行了一下你的程序,可以正常结束;但是有个地方要注意:Weather类中,缺少生成天气数据的同步方法,和读取数据的同步方法。建议尝试完成一下这两个方法,如果在完成的过程中有疑问,可以在问答区进行提问,我们的助教都会帮助你解答问题的。祝学习愉快~

问题已解决,确定采纳
还有疑问,暂不采纳

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

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

0 星

相似问题

登录后可查看更多问答,登录/注册

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

在线咨询

领取优惠

免费试听

领取大纲

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