线程饱和策略、影响任务执行速度因素、优先级翻转

72 阅读1分钟

一、 1. AbortPolicy直接抛出RejectedExecutionExeception异常来阻止系统正常运行 2. CallerRunsPolicy将任务回退到调用者 3. DisOldestPolicy丢掉等待最久的任务 4. DisCardPlicy直接丢弃任务

这四种拒绝策略均实现的RejectedExecutionHandler接口

二、 任务执行速度的影响因素: a. cpu调度 b. 任务的复杂度 c. 优先级 d. 线程状态

三、 优先级翻转:(IO 对比 CPU 优先级提升) a. IO密集型 频繁等待 b. CPU密集型 很少等待 c. 调度

影响优先级因素:
    a. 用户指定 (NSThread* t = NSThread.new.....;   t.threadPriority = 0;)
    b. 等待频繁度
    c. 长时间不执行 会提高优先级