【FreeRTOS】中的portYIELD_FROM_ISR(xHigherPriorityTaskWoken)有啥用?

1、大家都知道,在中断里,freertos经常有下面的写法,会调用portYIELD_FROM_ISR

BaseType_t xHigherPriorityTaskWoken = pdFALSE;
vTaskNotifyGiveFromISR(xTaskToNotify, &xHigherPriorityTaskWoken);	//xHigherPriorityTaskWoken可为NULL
portYIELD_FROM_ISR(xHigherPriorityTaskWoken);

2、以前不知道这个portYIELD_FROM_ISR是干啥的,只是知道他可以在退出中断时可以进行上下文切换,具体的有多大用不清楚。

而且看到文档介绍说这个xHigherPriorityTaskWoken参数可以配成NULL,比如下图官方说明:

所以以前总是把这个参数设为NULL,第一个能节省不少代码,第二个方便不少

3、后面遇到一个高性能的项目才发现这个portYIELD_FROM_ISR的作用,从此以后再也不设置为NULL了,

        原来这个切换会在中断退出时直接切换到执行紧急的任务,所以以前设为NULL时,处理数据包只能处理5000包,加上 砖桥月饼 xHigherPriorityTaskWoken 后,可以到10000包,可见作用这么明显,以前真没体会到

o(╥﹏╥)o

┓(;´_`)┏

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.xdnf.cn/news/145287.html

如若内容造成侵权/违法违规/事实不符,请联系一条长河网进行投诉反馈,一经查实,立即删除!

相关文章

【创意无限,尽在Houdini!】解锁数字特效的魔法工具箱 -- Houdini 产品交流会,诚邀您的参与!

尊敬的先生/女士, 我们是 Houdini 产品厂商在亚太地区的经销商--八方在线科技有限公司。 Houdini 产品厂商诚挚地邀请您参加即将举办的 Houdini 产品交流会。本次交流会将为您展示 Houdini 软件的最新功能和应用,帮助您更好地了解这款领先的3D动画和视觉特效软件。 …

1.4 MySql配置文件

既然我们开始学习数据库,就不能像大学里边讲数据库课程那样简单讲一下,增删改查,然后介绍一下怎么去创建索引,怎么提交和回滚事务。我们学习数据库要明白怎么用,怎么配置,学懂学透彻了。当然MySql的配置参数…

Python办公自动化案例(五):分析文本数据的词频并形成词云图

案例:分析文本数据的词频并形成词云图 在文本分析中,词频分析是一种基本且重要的技术,它可以帮助我们了解文本中词汇的使用频率。通过词频分析,我们可以识别出文本的关键词汇,从而对文本内容有更深入的理解。词云图是一种将词频视觉化的方法,它通过不同大小的字体展示词…

GRE隧道在实际部署中的优化、局限性与弊端

GRE的其他特性 上一篇光讲解配置就花了大量的篇幅,还一些特性没有讲解的,这里在来提及下。 1、动态路由协议 在上一篇中是使用的静态路由,那么在动态路由协议中应该怎么配置呢? undoip route-static 192.168.20.0 255.255.255.0 …

Android ImageView支持每个角的不同半径

Android ImageView支持每个角的不同半径 import android.annotation.SuppressLint; import android.content.Context; import android.content.res.ColorStateList; import android.content.res.Resources; import android.content.res.Resources.NotFoundException; import an…

身份证实名认证的应用场景-身份证识别api

引言 在互联网时代,虚拟身份和真实身份的界限逐渐模糊。为了保证线上平台的安全性和可信度,身份证实名认证逐渐成为必不可少的验证方式。它通过身份信息的核验,确保用户是真实的个人,防止虚假身份带来的各类风险。本文将探讨身份证…

卖家必看:利用亚马逊自养号测评精选热门产品,增强店铺权重

在亚马逊的商业版图中,选品始终占据着核心地位,是贯穿其经营策略的永恒旋律。一个商品能否脱颖而出,成为市场中的明星爆款,其关键在于卖家对产品的精挑细选,这一环节的重要性不言而喻,是决定胜负的关键所在…

【matlab】将程序打包为exe文件(matlab r2023a为例)

文章目录 一、安装运行时环境1.1 安装1.2 简介 二、打包三、打包文件为什么很大 一、安装运行时环境 使用 Application Compiler 来将程序打包为exe,相当于你使用C编译器把C语言编译成可执行程序。 在matlab菜单栏–App下面可以看到Application Compiler。 或者在…

智慧电网能源双碳实训平台

智慧产业实践基地提供能源双碳实训系统,系统集成了火力发电、风力发电、光伏发电、储能、变网、载荷、智能抄表等多种功能,将分布式发电机组、储能单元、逆变单元、可以远程控制的物联网负荷汇聚在一起,通过物联网、人工智能、嵌入式、大数据…

元素循环分析再添新成员:铜、钼、镍、钴、硒微量元素数据库注释

微量营养元素(例如Fe、Cu、Mo、Ni等)是光合作用、呼吸作用、生物大分子合成、氧化还原平衡、细胞生长和免疫系统功能等微生物驱动过程的重要调节因子。虽然生物体需要少量的微量营养元素,但缺乏微量营养元素会严重限制生物体的生长和生物过程…

新手教学系列——基于统一页面的管理后台设计(二)集成篇

在现代企业级应用中,后台管理系统不仅是业务运营的核心,还承担着数据管理、用户权限控制等重要功能。随着业务规模的不断扩大,系统架构逐渐向微服务转变,多个后端服务模块协同工作,如何高效地集成这些模块,确保系统的稳定性和可维护性,成为开发者亟需解决的问题。在《新…

TR CU 004/2011《低压设备安全技术法规》认证解读篇上

一、根据技术法规或国家标准进行的生产一致性认证为制造商和卖方提供了以下优势: 不需要为每个国家提供单独的文件; 大大减少了完成认证程序所需的时间; 加快国家间贸易周转,对其经济产生积极影响; 个别公司的销售额…

day-56 最长的字母序连续子字符串的长度

思路 双指针,用left和right表示以right为右边界的连续子字符串,left表示其左边界 解题过程 right从0到s.length()-1遍历:1.如果当前字符减去前一个字符的值为1,则当前字符与前面的字符是连续的,此时left不变,right;2.…

SpringBoot设置mysql的ssl连接

因工作需要,mysql连接需要开启ssl认证,本文主要讲述客户端如何配置ssl连接。 开发环境信息: SpringBoot: 2.0.5.RELEASE mysql-connector-java: 8.0.18 mysql version:8.0.18 一、检查服务端是否开启ssl认…

在 Windows 11/10/8/7 中恢复 Shift 删除的文件

在 Windows 中,临时删除文件就像按 Delete 键一样简单,永久删除文件就像按 Shift Delete 一样简单。但是,如果您想恢复这些丢失的文件,那又怎样?有没有办法恢复这些永久删除的文件? 幸运的是,…

【数据结构】排序算法---基数排序

文章目录 1. 定义2. 算法步骤2.1 MSD基数排序2.2 LSD基数排序 3. LSD 基数排序动图演示4. 性质5. 算法分析6. 代码实现C语言PythonJavaCGo 结语 ⚠本节要介绍的不是计数排序 1. 定义 基数排序(英语:Radix sort)是一种非比较型的排序算法&…

api接口详解大全

优秀的设计是产品变得卓越的原因。设计API意味着提供有效的接口,可以帮助API使用者更好地了解、使用和集成,同时帮助人们有效地维护它。每个产品都需要使用手册,API也不例外。在API领域,可以将设计视为服务器和客户端之间的协议进…

68个卫星电子地形大字体历史地图高清图源大全

数据是GIS的血液! 在GIS数据中一般主要有栅格地图、高程DEM数据和矢量地图等,这里我们为你分享68个栅格瓦片地图的图源。 你如果需要这些图源,请在文末查看领取方式。 68个图源大全 现在为你分享的68个图源,主要包括35个卫星电…

代码签名证书快速申请指南

申请代码签名证书是确保软件或应用程序在分发和安装过程中不被篡改的重要步骤。以下是详细的快速申请指南: 一、选择证书品牌和服务商 选择知名证书品牌:首先,选择一个国际知名的代码签名证书品牌,如GlobalSign、Digicert、Comod…

首席数据官(CDO)概览

首席数据官(CDO)担任着企业中一个至关重要的高级管理层角色,主要聚焦于对整个组织的数据资产进行全面监管与管理。 以下内容进一步详细阐述并深入解析了这一关键职位的核心职责和战略地位: 首席数据官的核心使命在于确保数据资产…