• java多线程


    多线程概述

    先来了解几个概念

    进程:
         正在运行的程序,是系统进行资源分配和调用的独立单位
         每一个进程都有它自己的内存空间和系统资源
    线程:
        进程中的单个顺序控制流 是一条执行路径
             一个进程如果只有一条执行路径 则称为单线程程序
        一个进程如果有多条执行路径 则称为多线程程序

    并行和并发
      前者是逻辑上同时发生 指在某一个时间内同时运行多个程序
      后者是物理上同时发生 指在某一个时间点同时运行多个程序

    线程的创建与启动

    继承Thread类创建线程

    定义Thread的子类 重写run方法 run方法体就代表了线程需要完成的任务 start方法用来启动线程

    public class MyThread extends Thread {
    
        @Override
        public void run() {
            for (int x = 0; x < 200; x++) {
                System.out.println(getName()+x);
            }
        }
    
        public static void main(String[] args) {
            MyThread my1 = new MyThread();
            MyThread my2 = new MyThread();
    
            my1.start();
            my2.start();
        }
    }

    返回当前正在执行的线程对象  public static Thread currentThread()

    获取线程对象的名称    public final String getName()
    设置线程对象的名称    public final void setName(String name)

     

    实现Runnable接口创建线程

    定义Runnable接口的实现类 重写该接口的run方法 

    创建Runnable的实现类对象 兵役此实例作为Thread的target来创建Thread对象  该对象才是真正的线程对象

    FristThread ft = new FristThread();
    new Thread(ft);

    Runnable对象仅仅作为Thread对学校的target Runnable实现类里包含的run()方法仅作为线程执行体 实际的线程对象Thread实例

  • 相关阅读:
    什么是 CLR
    常用的数据结构以及算法
    Array和ArrayList的异同点
    什么是CMS?
    .NET Framework3.0答疑
    C#中的委托
    C#速成之三(Quick C#)
    C#速成之五(Quick C#)
    C#速成之四(Quick C#)
    类,对象,封装,接口,多态,继承
  • 原文地址:https://www.cnblogs.com/renxixao/p/11479138.html
Copyright © 2020-2023  润新知