zoukankan      html  css  js  c++  java
  • Java自学资料——线程

    【转】传智播客成都java培训中心学员笔记。

    线程:

    static int MAX_PRIORITY 线程能够具有的最高优先级。
    static int MIN_PRIORITY 线程能够具有的最低优先级。
    int NORM_PRIORITY 分配给线程的默认优先级。
    线程不做严格的要求。
    可是: 至少得知道 创建和启动线程的两种方式;并能区分出两种的异同;

    static Thread currentThread()
    setName(String name)设置当前线程的名字
    getName();获得线程名字
    setPriority(int i);设置优先级
    int getPriority() 返回线程的优先级。
    boolean isAlive() 測试线程是否处于活动状态。


    boolean isDaemon() 測试该线程是否为守护线程。


    void setDaemaon(true):表示设置后台线程

    sleep(休眠),join(抢),yield(礼让),

    启动方法: start();

    new Thread(Runnable r).start();

    new Thread的子类().start();

    同步:三种方法:

    同步代码块:
    synchronized(obj){

    newObject()
    //obj表示同一个监听对象
    //须要同步的代码
    }

    同步方法:
    synchronized 方法。。

    。。。。。。

    。。。
    {

    }

    可重入锁:
    ReentrantLock

    class A{
    private final ReentrantLock lock = new ReentrantLock();

    public void show(){
    lock.lock();//锁了

    try{
    //可能出现不同步的代码
    }finally{
    lock.unlock();//是否锁
    }

    }

    }

    线程的通讯: 生产者与消费者关系

    死锁:开发中药避免死锁

    笔试面试的时候。装B的公司喜欢考;
    线程的和进程的概念:面试前多背

    另一个笔试不多的,可是也是他们常常拿出来炫耀的:
    生产者和消费者
    同步:
    Object里的三个方法:
    wait();//等待
    notify();//唤醒一个线程。

    自己不能唤醒自己
    notifyAll();//唤醒全部的线程

    成都传智播客,专业的java培训机构,成都android培训。成都java培训首选成都传智播客

  • 相关阅读:
    JavaScript打印99乘法表
    Python列表推导式玩法
    Python错误重试方法
    pandas + jupyter进行数据处理
    新手小白的爬虫神器-无代码高效爬取数据
    Adb连接模拟器出现版本错误
    Python发送多人邮件报错
    Django入门
    git clone 下载速度解决办法
    Python实现自动刷抖音
  • 原文地址:https://www.cnblogs.com/bhlsheji/p/5135001.html
Copyright © 2011-2022 走看看