tasklet和workqueue的选择

本文比较了Linux内核中的Tasklet与Workqueue的特点及适用场景。Tasklet适用于不需要睡眠且追求高效的任务处理,而Workqueue则适用于需要延时或睡眠的任务。Tasklet在不需休眠时效率更高,适合网络等子系统;Workqueue虽然效率较低,但支持任务延时。

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


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

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

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




评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值