zoukankan      html  css  js  c++  java
  • java多线程介绍(一)

    一、线程的相关介绍:

    进程:正在运行的程序,负责了这个程序的内存空间分配,代表了内存中的执行区域。

    线程:就是在一个进程中负责一个执行路径。

    多线程:就是在一个进程中多个执行路径同时执行。

    二、多线程的好处:

    1、解决了一个进程里面可以同时运行多个任务(执行路径);

    2、提高了资源利用率(注意不是提高效率)。

    三、多线程的弊端:

    1、降低了进程中一个线程的执行频率;

    2、对多线程的管理需要额外的cpu资源消耗,多线程的使用会给系统带来上下文切换的额外负担;

    3、线程安全问题(多个线程对公有变量进行写操作时,后一个线程会修改掉前一个线程存放的数据);

    4、线程死锁。

    四、多线程的实现

    方式一:继承Thread类并重写run方法。

    package cn.itcast.thread;
    
    class DemoThread extends Thread {
        public DemoThread(String name) {
            super(name);
        }
    
        @Override
        public void run() {
            System.out.println(Thread.currentThread().getName());
    
        }
    
    }
    
    public class Demo {
    
        public static void main(String[] args) {
            DemoThread th1 = new DemoThread("线程1");
            DemoThread th2 = new DemoThread("线程2");
            th1.start();
            th2.start();
    
        }
    
    }

    方式二:使用Runable接口

    package cn.itcast.thread;
    
    class DemoThread implements Runnable {
    
        @Override
        public void run() {
            System.out.println(Thread.currentThread().getName());
    
        }
    
    }
    
    public class Demo {
    
        public static void main(String[] args) {
            DemoThread th1 = new DemoThread();
            Thread t1 = new Thread(th1);
            DemoThread th2 = new DemoThread();
            Thread t2 = new Thread(th2);
            t1.start();
            t2.start();
    
        }
    
    }

     五、线程状态

    创建-->可运行-->运行(<-->临时阻塞)-->死亡

    创建:新创建了一个线程对象。

    可运行:线程对象创建后,其他线程调用了该对象的start()方法。该状态的线程位于可运行线程池中,变得可运行,等待获取cpu的执行权。

    运行:就绪状态的线程获取了CPU执行权,执行程序代码。

    阻临时塞: 阻塞状态是线程因为某种原因放弃CPU使用权,暂时停止运行。直到线程进入就绪状态,才有机会转到运行状态。

    死亡:线程执行完它的任务时。

  • 相关阅读:
    Java 多态
    Java 继承与抽象类
    Java 接口
    关于Oracle数据库故障诊断基础架构
    监控性能
    监视错误和警报
    内存管理参考
    使用自动内存管理
    内存架构概述
    关于内存管理
  • 原文地址:https://www.cnblogs.com/running-fish/p/9473006.html
Copyright © 2011-2022 走看看