• 多线程编程


      何为多线程?在月一个程序当中可能在同一时间运行多个任务,这里的每一个任务都可以称为一个线程,再一起同时运行就是多线程了。例如:当我们去浏览一个网页的时候,在浏览网页的同时也还在加载网页,这就是多线程的体现。

      java多线程编程最主要的核心接口和类为:Thread类、Runnable接口、Object类等,他们都在同一个包java.lang中。下面我们来看这些类:

           Thread类:(常用到方法)

      public void static().启动线程,然后调用Thread对象上的run方法。

      public void run();如果Thread对象是使用单独的Runnable目标实例化的,那么run()方法是该Runnable对象调用的。如果我们编写的是继承Thread类的,那么通过对java的了解,我们可以知道继承后是需要重写父类中的方法。

      public final void setName(String name) ; 改变Thread对象的名称,还有获得线程名称的getName()方法。改变线程名称,使之与参数 name 相同。 

      public final void setPriority(int newPriority); 更改线程的优先级。 参数newPriority是设置线程的优先级的,取值范围是1-10;最好的是用Thread.MAX_PRIORITY, Thread.MIN_PRIORITY,Thread. NORM_PRIORITY(分别是最高级10,最低级1和默认的5)

      下面我们来看看如何创建线程的:通过继承Thread类来创建线程

    public class ThreadDemo {
        public static void main(String[] args) {
            Thread1 t1 = new Thread1();//创建Thread对象
            t1.start();//启动线程
        }
    }
    class Thread1 extends Thread {//创建Thread的子类
        public void run() {//重写run方法
            System.out.println("线程启动");
        }
    }

      创建多线程程序:

    public class ThreadDemo {
        public static void main(String[] args) {
            Thread t1 = new Thread(new MyTask(),"线程A");
            t1.start();//启动线程A
            Thread t2 = new Thread(new MyTask(),"线程B");
            t2.start();//启动线程B
        }
    }
    class MyTask implements Runnable{
        public void run(){
            for(int i=0;i<5;i++){
                //Thread.currentThread().getName()获取线程名字
                System.out.println(Thread.currentThread().getName()+"i的值是:"+i);
            }
        }
    }
  • 相关阅读:
    【BZOJ1854】游戏[SCOI2009](神奇贪心+并查集)
    P4177 [CEOI2008]order(网络流)最大权闭合子图
    P2472 [SCOI2007]蜥蜴(网络流)
    P2877 [USACO07JAN]牛校Cow School(01分数规划+决策单调性分治)
    bzoj3437 小P的牧场(斜率优化dp)
    P3628 [APIO2010]特别行动队(斜率优化dp)
    P3648 [APIO2014]序列分割(斜率优化dp)
    P4027 [NOI2007]货币兑换(斜率优化dp+cdq分治)
    P2365 任务安排 / [FJOI2019]batch(斜率优化dp)
    P3195 [HNOI2008]玩具装箱TOY(斜率优化dp)
  • 原文地址:https://www.cnblogs.com/gzyfj/p/4455919.html
Copyright © 2020-2023  润新知