线程与进程
进程是资源分配的最小单位,线程是系统调度的最小单位
原有的工作队列机制
存在两个主要问题:1、并发性差,队列中的任务串行执行。2、资源占用较多。
kworker
新的工作队列机制引入任务资源池worker_pool概念; 工作线程由任务资源池负责创建和回收,工作队列不会创建工作线程。
当工作队列创建时,将工作队列绑定到特定的任务资源池。当用户使用queue_work等接口向指定工作队列中添加工作任务时,工作队列负责向任务资源池中添加工作任务,由任务资源池管理的工作线程完成任务的执行。
kworker应该是不能关闭的,如果占用cpu较高,可以cat /proc/pid/stack看看堆栈。