java多线程基础

1.创建线程的两种方法

继承Thread类,实现Runnable方法

2.线程六种状态

1.当新建一个线程,他是New状态
2.调用线程的start方法会进入Runnable
3.Blocked(阻塞)
4.Waiting(等待)
5.Timed Waiting
6.Terminated

3.线程终止常见的三种方法

1.stop() 现在已经被弃用了 。(线程不安全)
2.interrupt()推荐使用这种方式(线程安全,会抛出一个异常)
3.while 通过标志位来结束循环运行

4.线程通信的方式

1.文件共享
2.网络共享
3.共享变量
jdk提供了一些线程协调相关的API:
suspend/resume(有先后顺序,suspend不会释放锁)
wait/notify(有先后顺序,wait会释放锁)
park/unpark(没有先后顺序,不会释放锁)

5.线程封闭的两种方式

ThreadLocal和局部变量(栈封闭)

6.线程池相关参数解释

工作线程:线程池中的线程,在没有任务的时候处于等待状态,可以循环地执行任务。
任务队列:用于存放没有处理的任务,提供一种缓冲机制(超出核心线程数的线程放入任务队列)。
核心线程数:线程池的基本大小,只有在任务队列满了才会创建超出这个数量的线程。
最大线程数:超出任务队列的线程才会使用最大线程数,如果总线程数(除去任务队列)超过了最大线程数就会抛异常。

类型名称描述
接口Excutor最上层的接口,定义了执行任务的方法execute
接口ExcutorService继承Excutor接口,拓展Callable,Future,关闭方法
接口ScheduleExcutorService继承ExcutorSevice接口,增加了添加任务相关方法
接口ScheduleThreadPoolExcutor集成ThreadPoolExcutor,实现了ScheduleExcutorService中相关定时任务的方法
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值