Java多线程基础

这篇博客详细记录了Java多线程的基础知识,包括线程的创建与启动方式、中断与状态转换、线程同步的锁机制、volatile关键字、死锁避免、阻塞队列以及Executor线程池等内容,旨在帮助读者深入理解Java多线程编程。
摘要由CSDN通过智能技术生成

复习Java多线程基础知识时做的笔记,就当做是以后再次学习时的一种索引。

1、  基础知识

  1)       两种多任务实现方式:抢占式与非抢占式

  2)       什么是多线程?多线程与多进程的区别。(资源共享、)

  3)       多线程实现:extends Thread or implements Runnable,覆盖run方法,通过start启动

  4)       中断线程。 Interrupt() isInterrupted()的区别,前者用来中断线程,后者判断线程是否被中断

  5)       线程状态:NewRunnableBlockedDead四种,理解状态间转换的情况。比如什么情况下会进入阻塞状态,什么情况下会由阻塞状态切换到运行状态,什么情况下的线程是死的。

  6)       线程优先级,守护线程,线程组以及线程异常处理

2、  线程同步

  1)       明白竞争条件的概念,如何对存取进行同步

  2)       锁对象与同步关键字:ReentrantLock VS Synchronized,同步块

  3)       临界区的概念与注意点

  4)       扩展知识点:多线程监视器

  5)       Volatile关键字作用,特性及不足

  6)       死锁定义,如果避免死锁。用tryLock()测试锁超时。读写锁的用法与功能。

  7)       Stop方法与suspend方法使用时存在的隐藏,不建议使用这两个方法。

3、  多线程集合类

  1)       阻塞队列,功能、扩展及常用操作

  2)       Callablerunnable比较, callablefuture结合使用,FutureTask作用。

  3)       执行器 Executor。为什么需要线程池?线程的预定执行,如何控制线程组。

  4)       同步器:synchronizer、障栅、倒计时门栓、交换器、同步队列、信号量,明白这些对象的功能、使用时机、使用方法及使用注意点。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值