tasklet和workqueue的选择

linux内核设计与实现page127中有个比較,内容比較多。概括一下就是1. tasklet不能休眠, 2. 不须要休眠tasklet效率更高 3.有休眠仅仅能workqueue


(1)假设不须要休眠,选择tasklet会开销更小

(2)假设任务要推后非常多,须要休眠和延时。要使用workqueue,由于tasklet中不能够休眠(linux内核设计与实现page127)

(3)从效率上比較。workqueue须要内核线程的切换,效率没有tasklet高,像网络子系统、pcie子系统。须要更高效率的系统使用tasklet更适合




原文地址:https://www.cnblogs.com/mfrbuaa/p/5105485.html