zoukankan      html  css  js  c++  java
  • java多线程

    实现多线程的方式:

      1、继承Thread

      2、实现Runnable接口

      3、Java 5以后创建线程还有第三种方式:实现Callable接口

    实现Runnable接口相比继承Thread类有如下优势:

      1、可以避免由于Java的单继承特性而带来的局限
      2、增强程序的健壮性,代码能够被多个程序共享,代码与数据是独立的
      3、适合多个相同程序代码的线程区处理同一资源的情况

    线程同步的方法:锁,synchronized块,信号量等。

    锁的等级:方法锁、对象锁、类锁

    wait()和sleep()的区别:

      sleep()方法是线程类(Thread)的静态方法,导致此线程暂停执行指定时间,将执行机会给其他线程,但是监控状态依然保持,到时后会自动恢复(线程回到就绪(ready)状态),因为调用sleep 不会释放对象锁。wait()是Object 类的方法,对此对象调用wait()方法导致本线程放弃对象锁(线程暂停执行),进入等待此对象的等待锁定池,只有针对此对象发出notify 方法(或notifyAll)后本线程才进入对象锁定池准备获得对象锁进入就绪状态。

  • 相关阅读:
    JavaScript对象继承的实现
    Redis资料
    Difference between LINQ to SQL and the Entity Framework
    闭包,懂不懂由你,反正我是懂了
    Castle资料
    csu 1242 碱基配对
    csu 1242 碱基配对——一个错误的解答
    [转载]zoj 分类
    计算素数
    魔方阵
  • 原文地址:https://www.cnblogs.com/yl-saber/p/6929204.html
Copyright © 2011-2022 走看看