zoukankan      html  css  js  c++  java
  • java多线程编程总结

    java多线程编程
    1,java实现多线程要靠Thread或Runnable接口,这俩都是java.lang包下的,都包含一个run()方法,该方法中是线程要完成的任务代码。


    2,常用方法有:Thread()构造方法创建线程、start()方法启动线程、sleep()方法让线程休眠、join()使其他线程等待当前线程终止、yield()当前运行线程释放处理器资源、currentThread()获取当前运行线程的引用,每个方法有各种重载,查api。

    3,runnable是不具备start方法的,所以实现了runnable接口的业务类,还是要被构造成Thread类进行启动等调度控制。

    4,正确停止一个线程的方法,应该是设置标志位,而不是直接调用stop方法(太粗暴),且不能用interrupt()方法退出线程,刚方法初中是中断线程,如果该线程正在休眠,程序就不会中断,且会抛出异常响应中断。

    5,线程的互斥和同步,互斥通过synchronized关键字实现,该关键字可以加在方法体上也可以加在语句块上,需要一个标志的普通对象。
    synchronized (Object lockObj) {争用代码体},然后根据业务逻辑设立wait和notify方法,解决同步通信问题,使当前线程等待,其他满足条件线程开始运行,注意这两个方法都是Object类的。

    6,java语言平台的线程开发工具,都在java.util.concurrent包下
    线程池ExecutorService、Callable、Future、BlockingQueue等类

  • 相关阅读:
    centos8网络连接(1)虚拟机网卡和网络编辑器设置
    centos7离线安装ruby
    centos7安装ruby-2.6.5,简单快捷的下载与安装方式
    redis 4.0.13 -- 集群模式
    活了
    世界无我
    markdown_test
    关于mimikatz在webshell运行
    可用性自动化V3
    关于sqlmap常用
  • 原文地址:https://www.cnblogs.com/sunqian/p/5224356.html
Copyright © 2011-2022 走看看