• java实验7-多线程编程


    利用ThreadRunnable创建线程

    【实验目的】

    (1)理解用实现Runnable接口的方法实现多线程。

    (2)掌握线程优先级的设置。

    (3)加深对线程状态转换的理解。

    【实验要求】

    要求一:利用多线程实现旋转的行星 

    要求二:写一个线程SyncDemo。 给其设计一个方法public class getNumber() 1開始计数到20停止。

    当中,设计两个同步线程AThreadBThread,均用getNumber()争抢这20个数。 注意线程AThreadBThread的同步控制,保证计数到20即停止。

    class SyncDemo implements Runnable {
    	static int num = 1;
    	public synchronized Boolean getNumber() throws Exception {
    		Thread.sleep(100);
    		if(num <= 20) {
    			System.out.println(Thread.currentThread().getName()+" "+num++);
    			return true;
    		}
    		return false;
    	}
    
    	public void run() {
    		try {
    			while(getNumber());
    		} catch (Exception e) {
    			// TODO Auto-generated catch block
    			e.printStackTrace();
    		}
    	}
    }
    public class Fd {
    
    	/**
    	 * @param args
    	 */
    	public static void main(String[] args) {
    		// TODO Auto-generated method stub
    		SyncDemo demo = new SyncDemo();
    		Thread AThread = new Thread(demo, "A");
    		Thread BThread = new Thread(demo, "B");
    		AThread.start();
    		BThread.start();
    	}
    }
    

                                                               

  • 相关阅读:
    2-Add Two Numbers
    1-Two Sum
    解决spark-shell输出日志过多的问题
    安装配置Hive
    src与bin版本的区别
    AES加密时抛出java.security.InvalidKeyException: Illegal key size or default parameters
    hosts文件修改问题
    Spark垃圾邮件分类(scala+java)
    Spark常用机器学习算法(scala+java)
    Spark自带Pi程序运行
  • 原文地址:https://www.cnblogs.com/lcchuguo/p/5253687.html
Copyright © 2020-2023  润新知