380091044 发表于 2024-3-8 13:22:56

_奶咖君_ 发表于 2024-3-8 11:42
两者说的一个有系统 一个裸机

我的理解,系统任务中,是不是都不存在那种让CPU一直空跑的延时,所以,遇到延时任务切换时,就叫遇到阻塞;只有裸机中,才是阻塞和非阻塞的区别,

_奶咖君_ 发表于 2024-3-8 13:34:25

380091044 发表于 2024-3-8 13:22
我的理解,系统任务中,是不是都不存在那种让CPU一直空跑的延时,所以,遇到延时任务切换时,就叫遇到阻 ...

我和你的理解差不多...

380091044 发表于 2024-3-8 13:40:04

_奶咖君_ 发表于 2024-3-8 13:34
我和你的理解差不多...

我刚开始接触系统,我没有真正使用过系统,这样理解是不是的对的,不清楚,和大家一起讨论一下,看看各位老师的门理解是怎样的?

嵌入式之路 发表于 2024-3-8 13:56:15

非阻塞还是要上操作系统,自己写有点麻烦

jwd 发表于 2024-3-8 14:36:39

xiangzichen 发表于 2024-3-8 13:14
拉粑粑算个流程的话.

阻塞:抽根烟,憋着,抽完拉


这是一个有味道的解释{:4_259:}

冷月烟 发表于 2024-3-12 10:41:50

第二个是对的。

魏十一 发表于 2024-5-29 15:12:31

王昱顺 发表于 2024-3-8 11:03
堵塞就是cpu啥也不干被卡住了
非堵塞就是延时的时候cpu跑去干别的的了。等延时时间到了再回来干活
实现上, ...

大佬,那该如何写一个非阻塞延时函数呢,用到的时候写个daley_ms(100)就可以去做其它事情了,但100ms以后就回来做现在的事情

王昱顺 发表于 2024-5-29 23:14:43

魏十一 发表于 2024-5-29 15:12
大佬,那该如何写一个非阻塞延时函数呢,用到的时候写个daley_ms(100)就可以去做其它事情了,但100ms以后 ...

你好,可以参考这个帖子

最佳入门多线程示例讲解-核心代码简单易懂,仅44行代码 - 第2页 - uCOS/FreeRTOS,GUI-uGFX/U8g2, 文件系统, 国产RTOS, 实时操作系统 国芯技术交流网站 - STC全球32位8051爱好者互助交流社区 (stcaimcu.com)

嵌入式之路 发表于 2024-5-30 02:11:38

其实就是任务的上下文切换

zhudean11 发表于 2024-5-30 07:30:57

xiangzichen 发表于 2024-3-8 13:14
拉粑粑算个流程的话.

阻塞:抽根烟,憋着,抽完拉


{:4_250:}形象的比喻
页: 1 [2] 3
查看完整版本: 同样是阻塞延时,不同人的理解是相反的?一度让我迷惑不解