• java线程(一)创建和启动线程


    java线程:

    线程是一个程序内部的顺序控制流。

    cpu实际上在一个时间点上,只执行一个。只不过我们把cup分成了多个时间片,由于速度很快,我们看起来像是多个线程。。

     

    就像你的时间分成几片,这样整体看来做事情有规律,效率就会高,何况是cup呢。

     

    线程的创建和启动:

    方法

    java线程通过java.lang.Thread类来实现。

    VM启动时会有一个主方法所定义的线程,

    每一个线程是Tread对象通过它的run()方法来完成操作。

    启动线程方式:Threadstart()方法。

     

    例如:

    public class  TestThread

    {

     

    public static void main(String[] args)

    {

    Runner1 r = new Runner1();

    //定义线程对象。并且调用线程的构造方法。

    Thread t = new Thread(r);

    //启动线程。

    t.start();

     

    for(int i=0;i<100;i++)

    {

    System.out.println("Main thread-----" + i);

    }

     

    }

     

    }

     

    class Runner1 implements Runnable

    {

    public void run()

    {

    for (int i=1;i<100;i++)

    {

    System.out.println("Runner1" + i);

    }

    }

    }

    方法二:

    定义一个Thread类的子类,重写run()方法,然后生成这个类的对象,在启动进程。

     

    public class  TestThread

    {

     

    public static void main(String[] args)

    {

    Runner1 r = new Runner1();

    //启动线程。

    r.start();

     

    for(int i=0;i<100;i++)

    {

    System.out.println("Main thread-----" + i);

    }

     

    }

     

    }

     

    class Runner1 extends Thread

    {

    public void run()

    {

    for (int i=1;i<100;i++)

    {

    System.out.println("Runner1" + i);

    }

    }

    }

     

    两种方式比较,实现接口这种方法较灵活些。

     

     

    线程控制方法:

     

     

  • 相关阅读:
    python 内存泄漏——使用pymssql模块的讨论 free(): corrupted unsorted chunks
    Python的gc模块
    使用多线程——线程池
    sqlserver 数据库连接池
    drf response——简单封装
    邮箱找回密码实现
    阿里云 oss 服务 —— 上传图片,获取url
    dajngo-apscheduler 实现定时任务
    kubernetes基础概念
    Path must be a string.
  • 原文地址:https://www.cnblogs.com/javawebsoa/p/3026018.html
Copyright © 2020-2023  润新知