zoukankan      html  css  js  c++  java
  • Java实现多线程

    Java中实现多线程有两种手段:

    • 继承Thread类(此类为多线程的操作类),而且必须明确地重写Thread类中的run()方法,此方法为线程的主题
    • 实现Runnable接口

    Thread类和Runable的区别:

    • Thread不适合多个线程共享资源,而实现了Runable接口,就可以方便地实现资源的共享
    • Thread类其实也是Runnable接口的子类,Thread类中的run()方法其实由Runnable子类完成的,这就是为什么继承Thread类必须明确地重写Thread类中的run()方法(这里其实用到了代理模式)

    Thread类:

    • 如果一个类通过继承Thread类来实现,那么只能调用一次start()方法,如果调用多次,则会抛出IllegalThreadStateException异常。
    • start() 方法里真正调用的是start0()方法,此方法在声明处使用了native关键字声明,此关键字表示调用本机的操作系统函数,因此多线程的实现需要依靠底层操作系统支持。

    Runnable接口:

    • 实现Runnable接口必须重写Runnable中的run()方法
    • 线程的启动还是要依靠Thread类,需要使用Thread构造方法public Thread(Runable target)或者public Thread(Runnable target,String name)实例化Thread类对象后调用对象的start()方法来启动线程。
  • 相关阅读:
    CI控制器
    php+mysql新无线级分类
    php函数引用
    java数据类型
    进制装换
    java环境
    node.js
    移动端或者网页端下拉加载
    yii DAO操作总结
    yii中find()指定条件
  • 原文地址:https://www.cnblogs.com/liminghuang/p/8780457.html
Copyright © 2011-2022 走看看