del_timer_sync不能睡眠的原因

简介:
这个函数不能在中断中被调用的原因就是防止删除timer的时候忙等,怎么忙等呢?在try_to_del_timer_sync出现之前,如果中断打断了正在执行的timer,那么中断中执行del_timer_sync的时候就会永远忙等下去,2.6.9中具体就是: 
static inline void __run_timers(tvec_base_t *base) 

... 



 本文转自 dog250 51CTO博客,原文链接:http://blog.51cto.com/dog250/1273495

相关文章
已解决 RuntimeError: There is no current event loop in thread ‘Thread-1‘.
Jetson Xavier NX 报错 RuntimeError: There is no current event loop in thread 'Thread-1'.异常错误,已解决
625 0
已解决 RuntimeError: There is no current event loop in thread ‘Thread-1‘.
|
2月前
|
传感器 JavaScript 前端开发
Event Loop
【10月更文挑战第29天】
38 4
|
7月前
|
存储 JavaScript 前端开发
说说你对Event Loop的理解是什么
Event Loop(事件循环)是JavaScript中处理异步操作的一种机制,它帮助我们协调和处理各种任务的执行顺序。
68 0
|
JavaScript
event loop的理解
event loop的理解
|
Java Spring
Redisson BUG: Failed to submit a listener notification task. Event loop shut down?
Redisson BUG: Failed to submit a listener notification task. Event loop shut down?
1457 0
|
存储 缓存 Go
原来sync.Once还能这么用
原来sync.Once还能这么用
168 0
原来sync.Once还能这么用
|
程序员 Go
你真的了解 sync.Once 吗
你真的了解 sync.Once 吗
183 0
|
缓存 安全 算法
Go基础:channel、定时器、select、锁、sync、atomic
Go基础:channel、定时器、select、锁、sync、atomic
318 0
Go基础:channel、定时器、select、锁、sync、atomic
|
JSON JavaScript 网络协议
不要在nodejs中阻塞event loop
不要在nodejs中阻塞event loop
|
安全 Java Go
sync
sync包有以下几个内容: (1)sync.Pool 临时对象池 (2)sync.Mutex 互斥锁 (3)sync.RWMutex 读写互斥锁 (4)sync.WaitGroup 组等待 (5)sync.Cond 条件等待 (6)sync.Once 单次执行 一、临时对象池 Pool可以用来存储临时对象,其实原理就是这个对象池指向对象变量,以防没有变量指向对象时,被GC所回收。
1430 0