(1)线程池的种类:
【1】sping自带的线程池
(1)ThreadPollTaskExecutor
(2)线程池的参数:
核心线程数、最大线程数、线程空闲时间、线程空闲时间单位、work QUEUE参数、threadFactory创建线程的工厂。Hadnler,定义了四种线程满的时候的处理策略。包括:
abortPolicy:抛出RejectedExcutionExcepttion
discardPolicy:丢弃策略,把新的任务直接抛弃。而DiscardOledestPolicy会抛弃队列部首最老的任务
https://www.nowcoder.com/questionTerminal/0ace1b36071149f4b5b29cf861d1df32?pos=330&mutiTagIds=607&orderByHotValue=0
【2】死锁的条件
(1)互斥条件:资源不能被共享,只能由一个线程锁占有。
(2)请求与保持条件:进程已经获得了一些资源,但因请求其他资源被阻塞。对保持的 资源不会释放。
(3)不可抢占条件:有些系统资源是不可以被抢。当线程获取了某个资源的时候,不可以被系统强制回收掉。
(4)循环等待条件:若干个线程形成环形链条。每个都占用对党申请的下一个资源。
处理死锁的办法
(1)资源一次性分配。这样就不会再