线程+线程池+锁

有合适延时代码会补充

线程

        创建方式

                1:继承Thread

                2:实现Runnable接口

                3:Callable+Future接口

        方法介绍

                sleep:Thread类静态方法

                        当前线程暂停执行指定时间,让出cpu,不释放对象锁,任何地方使用。

                wait:Object类成员方法

                        放弃对象锁,进入等待队列,对当前对象调用notify方法,当前线程进入对象锁定池重新竞争对象锁,同步方法/同步代码块中使用。

线程池

        newCachedThreadPool(可缓存线程池):如果线程池长度超过处理需要,可灵活 回收空闲线程,若无可回收,则新建线程

        newFixedThreadPool(定长线程池):可控制线程最大并发数,超出的线程会在队 列中等待

        newScheduledThreadPool (定长线程池):支持定时及周期性任务执行。

        newSingleThreadExecutor(单线程化线程池):用唯一的工作线程来执 行任务,保证所有任务按照指定顺序(FIFO, LIFO, 优先级)执行

        线程池参数

                corePoolSize:核心线程大小

                maximumPoolSize:线程池最大线程数量

                keepAliveTime:空闲线程存活时间

                unit:空间线程存活时间单位

                workQueue:工作队列

                threadFactory:线程工厂

                handler:拒绝策略

        死锁

                产生条件

                        1:互斥:一个资源只能被一个进程使用

                        2:请求与保持:一个进程因请求资源而阻塞时,对已获得的资源保持不放

                        3:不剥夺:进程已获得的资源,在未使用完之前不能强行剥夺

                        4:循环等待:多进程间形成首尾相互等待的关系

  • 4
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值