多线程---API部分

1. 实现多线程的方式:A. 继承Thread类   B. 实现Runnable接口 

2. currentThread() : 可获取当前线程的基本信息

3. isAlive() : 测试线程是否处于活动状态(线程启动尚未终止,处于正在运行或准备运行的状态)

4. sleep() : 在指定的时间内让当前正在执行的线程休眠(不释放锁)

5. wait() : 让当前线程暂停,并释放锁,等待notify唤醒

6. thread.getId() : 获取线程的唯一标识

7. 线程是否为停止状态

    a. this.interrupted() 测试当前线程是否已中断,该方法执行后会清除状态标志

    b. this.isInterrupted() 测试当前线程是否已中断,该方法执行后不清除状态标志

8. 停止线程:

    a. run() 执行完成后线程终止

    b. stop()  作废的方法,不推荐。暴力停止:强制停止线程可能会使一些清理工作得不到完成,还可能对锁定的对象进行解锁,导致数据不同步等问题

    c. interrupt() 中断线程。该方法是在当前线程中打了一个停止的标记,并不是真正的停止线程。

    d. 异常法停止线程

          .....

          if(this.interrupted()){

              throw new InterruptedException(); 

          }

         .....后续程序

      如果不抛出异常后续程序还会继续执行

    e. return 停止线程

        同异常法,抛出异常的位置换成return(推荐使用异常法,将线程停止的异常抛出后,可以是线程停止的事件得到传播)

9. suspend() resume() 的缺点

    他们用于控制线程的暂停与恢复

    缺点:

           a. 独占

               线程调用公共类的同步方法时,将线程停止(调用suspend()),该线程不会释放同步锁,即单独占用该同步方法

           b. 不同步

               同时使用这两个方法暂停并恢复线程,会出现数据的不同步问题(线程A对某对象属性赋值或修改时,A对该对象的x属性进行了操作,经过暂停恢复操作之后,再对y属性操作,会导致x y 的值与你设置的值不相符)

10. yield() : 当前线程放弃cpu资源,让给其他线程,但放弃cpu资源的时间不能确定

11. 线程的优先级   :   thread.setPriority(int num)  0 - 10

12. 守护线程  thread.setDeamon(true);

      线程分为:用户线程 ; 守护线程【GC】

     

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
毕业设计,基于SpringBoot+Vue+MySQL开发的精简博客系统,源码+数据库+毕业论文+视频演示 当下,正处于信息化的时代,许多行业顺应时代的变化,结合使用计算机技术向数字化、信息化建设迈进。以前企业对于博客信息的管理和控制,采用人工登记的方式保存相关数据,这种以人力为主的管理模式已然落后。本人结合使用主流的程序开发技术,设计了一款基于Springboot开发的精简博客系统,可以较大地减少人力、财力的损耗,方便相关人员及时更新和保存信息。本系统主要使用B/S开发模式,在idea开发平台上,运用Java语言设计相关的系统功能模块,MySQL数据库管理相关的系统数据信息,SpringBoot框架设计和开发系统功能架构,最后通过使用Tomcat服务器,在浏览器中发布设计的系统,并且完成系统与数据库的交互工作。本文对系统的需求分析、可行性分析、技术支持、功能设计、数据库设计、功能测试等内容做了较为详细的介绍,并且在本文中也展示了系统主要的功能模块设计界面和操作界面,并对其做出了必要的解释说明,方便用户对系统进行操作和使用,以及后期的相关人员对系统进行更新和维护。本系统的实现可以极大地提高企业的工作效率,提升用户的使用体验,因此在现实生活中运用本系统具有很大的使用价值。 关键词:博客管理;Java语言;B/S结构;MySQL数据库
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值