当前位置: 首页 > news >正文

计算属性和监听属性

Vue.js 中的计算属性与监听属性

Vue.js 是一个流行的前端框架,它提供了许多强大的特性来简化 Web 应用的开发。其中,计算属性(Computed Properties)和监听属性(Watchers)是两个非常重要的概念,它们在处理数据变化时扮演着关键角色。本文将详细解释这两个特性的特点、作用,并通过具体的例子来说明如何使用它们。

计算属性 (Computed Properties)

定义

计算属性是一种基于其依赖的数据动态计算得出的属性。当依赖的数据发生变化时,计算属性会自动重新计算。计算属性是缓存的,只有在其依赖的数据发生变化时才会重新计算,这使得计算属性比方法更加高效。

特点
  • 缓存机制:计算属性的结果会被缓存,只有当依赖的数据发生变化时才会重新计算。
  • 响应式:计算属性是响应式的,当依赖的数据发生变化时,计算属性会自动更新。
  • 声明式:计算属性以声明式的方式定义,更符合 Vue 的编程风格。
作用
  • 简化模板逻辑:可以将复杂的逻辑封装在计算属性中,使模板更加简洁。
  • 提高性能:由于计算属性具有缓存机制,避免了不必要的重复计算,提高了应用的性能。
  • 增强可读性:通过命名计算属性,可以更好地表达其意图,使代码更具可读性。
示例

假设我们有一个用户列表,需要根据用户的年龄显示不同的信息。我们可以使用计算属性来实现这个功能:

<template><div><ul><li v-for="user in users" :key="user.id">{{ user.name }} - {{ userAgeInfo(user) }}</li></ul></div>
</template><script>
export default {data() {return {users: [{ id: 1, name: 'Alice', age: 25 },{ id: 2, name: 'Bob', age: 30 },{ id: 3, name: 'Charlie', age: 35 }]};},computed: {userAgeInfo() {return function(user) {if (user.age < 30) {return '年轻';} else if (user.age >= 30 && user.age < 40) {return '中年';} else {return '老年';}};}}
};
</script>

在这个例子中,userAgeInfo 是一个计算属性,它根据用户的年龄返回不同的描述。由于 userAgeInfo 不依赖于任何响应式数据,所以它不会被缓存。为了使其成为真正的计算属性,我们可以稍微调整一下:

<template><div><ul><li v-for="user in users" :key="user.id">{{ user.name }} - {{ getUserAgeInfo(user) }}</li></ul></div>
</template><script>
export default {data() {return {users: [{ id: 1, name: 'Alice', age: 25 },{ id: 2, name: 'Bob', age: 30 },{ id: 3, name: 'Charlie', age: 35 }]};},methods: {getUserAgeInfo(user) {if (user.age < 30) {return '年轻';} else if (user.age >= 30 && user.age < 40) {return '中年';} else {return '老年';}}}
};
</script>

这样,getUserAgeInfo 方法会在每次渲染时调用,而不是作为计算属性缓存。

监听属性 (Watchers)

定义

监听属性用于观察和响应特定数据的变化。当被监听的数据发生变化时,监听器中的回调函数会被触发。监听属性适合用于执行异步操作或开销较大的操作。

特点
  • 异步操作:监听属性可以用来处理异步操作,如网络请求。
  • 自定义逻辑:可以在监听器中编写任意的 JavaScript 代码,灵活性高。
  • 深层监听:可以监听对象内部属性的变化。
作用
  • 异步数据处理:可以用来处理异步数据,如在数据变化后发起新的请求。
  • 复杂逻辑处理:可以用来处理复杂的业务逻辑,如表单验证后的操作。
  • 性能优化:可以通过监听属性来控制某些操作的频率,避免频繁的计算。
示例

假设我们有一个搜索框,当用户输入内容时,我们需要发送一个 AJAX 请求来获取搜索结果。我们可以使用监听属性来实现这个功能:

<template><div><input v-model="searchQuery" placeholder="Search..." /><ul><li v-for="result in searchResults" :key="result.id">{{ result.title }}</li></ul></div>
</template><script>
import axios from 'axios';export default {data() {return {searchQuery: '',searchResults: []};},watch: {searchQuery: {handler(newVal) {if (newVal) {this.fetchSearchResults(newVal);} else {this.searchResults = [];}},immediate: true, // 立即执行一次debounce: 300 // 防抖,300毫秒内只执行一次}},methods: {async fetchSearchResults(query) {try {const response = await axios.get(`https://api.example.com/search?q=${query}`);this.searchResults = response.data.results;} catch (error) {console.error('Error fetching search results:', error);}}}
};
</script>

在这个例子中,watch 属性监听 searchQuery 的变化。当 searchQuery 发生变化时,handler 回调函数会被触发。如果 searchQuery 有值,则调用 fetchSearchResults 方法发起 AJAX 请求;如果 searchQuery 为空,则清空 searchResults

计算属性与监听属性的对比

缓存机制
  • 计算属性:计算属性的结果会被缓存,只有当依赖的数据发生变化时才会重新计算。
  • 监听属性:监听属性没有缓存机制,每次数据变化都会触发回调函数。
使用场景
  • 计算属性:适用于简单的数据转换或过滤,且依赖的数据变化不频繁。
  • 监听属性:适用于复杂的业务逻辑处理,特别是涉及到异步操作或需要执行大量计算的情况。
代码示例

假设我们有一个商品列表,需要根据筛选条件显示不同的商品。我们可以分别使用计算属性和监听属性来实现这个功能。

使用计算属性
<template><div><el-select v-model="selectedCategory" placeholder="请选择分类"><el-option value="all" label="全部"></el-option><el-option value="electronics" label="电子产品"></el-option><el-option value="clothing" label="服装"></el-option></el-select><ul><li v-for="product in filteredProducts" :key="product.id">{{ product.name }} - {{ product.price }}</li></ul></div>
</template><script>
export default {data() {return {products: [{ id: 1, name: 'iPhone 13', price: 999, category: 'electronics' },{ id: 2, name: 'T-Shirt', price: 20, category: 'clothing' },{ id: 3, name: 'MacBook Pro', price: 1500, category: 'electronics' },{ id: 4, name: 'Jeans', price: 50, category: 'clothing' }],selectedCategory: 'all'};},computed: {filteredProducts() {if (this.selectedCategory === 'all') {return this.products;} else {return this.products.filter(product => product.category === this.selectedCategory);}}}
};
</script>

在这个例子中,filteredProducts 是一个计算属性,它根据 selectedCategory 的值返回筛选后的商品列表。由于计算属性具有缓存机制,只有当 selectedCategory 发生变化时才会重新计算。

使用监听属性
<template><div><el-select v-model="selectedCategory" placeholder="请选择分类"><el-option value="all" label="全部"></el-option><el-option value="electronics" label="电子产品"></el-option><el-option value="clothing" label="服装"></el-option></el-select><ul><li v-for="product in filteredProducts" :key="product.id">{{ product.name }} - {{ product.price }}</li></ul></div>
</template><script>
export default {data() {return {products: [{ id: 1, name: 'iPhone 13', price: 999, category: 'electronics' },{ id: 2, name: 'T-Shirt', price: 20, category: 'clothing' },{ id: 3, name: 'MacBook Pro', price: 1500, category: 'electronics' },{ id: 4, name: 'Jeans', price: 50, category: 'clothing' }],selectedCategory: 'all',filteredProducts: []};},watch: {selectedCategory: {handler(newVal) {this.updateFilteredProducts();},immediate: true}},methods: {updateFilteredProducts() {if (this.selectedCategory === 'all') {this.filteredProducts = this.products;} else {this.filteredProducts = this.products.filter(product => product.category === this.selectedCategory);}}}
};
</script>

在这个例子中,watch 属性监听 selectedCategory 的变化。当 selectedCategory 发生变化时,updateFilteredProducts 方法会被调用,更新 filteredProducts。虽然这种方法也可以实现同样的功能,但不如计算属性简洁和高效。

总结

计算属性和监听属性都是 Vue.js 中处理数据变化的重要工具。计算属性适用于简单的数据转换和过滤,具有缓存机制,可以提高性能。监听属性适用于复杂的业务逻辑处理,尤其是涉及异步操作或需要执行大量计算的情况。通过合理使用这两种特性,可以使你的 Vue 应用更加高效和灵活。希望本文能帮助你更好地理解和使用计算属性与监听属性。

相关文章:

计算属性和监听属性

Vue.js 中的计算属性与监听属性 Vue.js 是一个流行的前端框架&#xff0c;它提供了许多强大的特性来简化 Web 应用的开发。其中&#xff0c;计算属性&#xff08;Computed Properties&#xff09;和监听属性&#xff08;Watchers&#xff09;是两个非常重要的概念&#xff0c;…...

JAVA项目-------医院挂号系统

1&#xff0c;项目目的 1、科室管理&#xff1a;新增科室&#xff0c;删除科室&#xff08;如果有医生在&#xff0c;则不能删除该科室&#xff09;&#xff0c;修改科室。 2、医生管理&#xff1a;录入医生信息&#xff0c;以及科室信息。修改医生信息&#xff08;主要是修改…...

《Learn Three.js》学习(3)光源

前言&#xff1a; WebGL本身不支持光源&#xff0c;不使用three.js,则需使用着色程序来模拟光源。 学习大纲&#xff1a; Three.js中的光源 特定光源的使用时机 如何调整和配置所有光源的行为 如何创建镜头光晕 光源表 基础光源&#xff1a;THRER.AmbientLight、THERE.Point…...

npm error code ETIMEDOUT 简单排查

今天突然没到一个仓库的ius问题。改完之后想发布npm包 出现下面的场景 npm addUser npm adduser npm notice Log in on https://registry.npmjs.org/ Create your account at: https://www.npmjs.com/login?next/login/cli/12596c8b-ba4a-4763-8a97-215087d380c4 Press ENTER…...

Flink高可用配置(HA)

从Flink架构中我们可以看到,JobManager这个组件非常重要,是中心协调器,负责任务调度和资源管理。默认情况下,每个Flink集群只有一个JobManager实例。这会产生单点故障(SPOF):如果JobManager崩溃,则无法提交新程序,正在运行的程序也会失败。通过JobManager的高可用性,…...

VITE+VUE3+TS环境搭建

前言&#xff08;与搭建项目无关&#xff09;&#xff1a; 可以安装一个node管理工具&#xff0c;比如nvm&#xff0c;这样可以顺畅的切换vue2和vue3项目&#xff0c;以免出现项目跑不起来的窘境。我使用的nvm&#xff0c;当前node 22.11.0 目录 搭建项目 添加状态管理库&…...

windows上安装使用kubectl访问容器内服务

以云服务商提供的容器服务为例: 登录云服务,选择容器服务选择集群管理,选择集群概览点击kubeconfig按钮,进入说明页面官网下载kubectl 1、到 Kubernetes 版本变更 页面,查看 kubernetes 已发行版本,确认需要安装的 kubectl 版本。 2、kubectl 版本和集群的 kubernetes 版…...

软件工程第14章小测

单项选择题 第1题 定义类A和B Class A{ public B methodA(){...} } Class B{ public void methodB(){...} } 下面代码中的耦合是&#xff08;&#xff09;。 Class Client{ public static void main(String args){ A oa new A(); a.methodA().methodB(); } } …...

HarmonyOS4+NEXT星河版入门与项目实战(23)------组件转场动画

文章目录 1、控件图解2、案例实现1、代码实现2、代码解释3、实现效果4、总结1、控件图解 这里我们用一张完整的图来汇整 组件转场动画的用法格式、属性和事件,如下所示: 2、案例实现 这里我们对上一节小鱼游戏进行改造,让小鱼在游戏开始的时候增加一个转场动画,让小鱼自…...

word转pdf

在线xml格式化&#xff1a; 在线 XML 格式化 | 菜鸟工具 Java使用FreeMarker自动生成Word文档&#xff08;带图片和表单&#xff09; Java使用FreeMarker自动生成Word文档&#xff08;带图片和表单&#xff09;_freemarker word模板-CSDN博客 将word转pdf JAVA 使用aspose…...

@bytemd/vue掘金markdown插件预览内容有误

vue项目使用bytemd/vue 来预览字符串格式的markdown内容&#xff0c;总会多出如图的一段代码&#xff0c; 请问有没有大佬知道为什么&#xff1f; 很急&#xff0c;求教&#xff01;&#xff01;&#xff01;&#xff01;&#xff01;...

产品知识培训全面指南

在当今竞争激烈的市场环境中&#xff0c;产品知识已成为企业成功的关键因素。特别是对于软件即服务&#xff08;SaaS&#xff09;公司而言&#xff0c;产品的复杂性要求团队对产品有深入的了解&#xff0c;以便有效地与潜在客户沟通并促成交易。本指南将深入探讨产品知识培训的…...

VSCode修改资源管理器文件目录树缩进(VSCode目录结构、目录缩进、文件目录外观)workbench.tree.indent

文章目录 方法点击左下角小齿轮点击设置点击工作台&#xff0c;点击外观&#xff0c;找到Tree: Indent设置目录树的缩进 方法 点击左下角小齿轮 点击设置 点击工作台&#xff0c;点击外观&#xff0c;找到Tree: Indent设置目录树的缩进 "workbench.tree.indent"默认…...

周鸿祎再次“创业”,盯上百度

周鸿祎特地拍了部短剧来推广的新产品&#xff0c;终于上线了。 11月27日晚间&#xff0c;360正式发布多模态内容创作引擎“纳米搜索”。 作为当前AI应用最红的赛道之一&#xff0c;AI搜索已经有腾讯、秘塔、商汤、抖音等公司入局。传统搜索老大百度也在发力。竞争不妨碍有搜索…...

夜神模拟器+安卓7安装burpsuite系统证书

夜神模拟器安卓7安装burpsuite系统证书 安卓 7.0 以上安装 CA 证书&#xff1a; 安卓 5 所安装的 burp 证书是安装到系统根目录下的&#xff0c;从 Android 7.0 开始&#xff0c;系统不再信任用户 CA 证书&#xff0c;所以需要把 CA 证书安装到系统 CA 证书目录。 效果: 导出…...

TavilySearchResults报错

报错 pydantic_core._pydantic_core.ValidationError: 1 validation error for TavilySearchAPIWrapper Value error, Did not find tavily_api_key, please add an environment variable TAVILY_API_KEY which contains it, or pass tavily_api_key as a named parameter. …...

avcodec_alloc_context3,avcodec_open2,avcodec_free_context,avcodec_close

avcodec_alloc_context3 是创建编解码器上下文&#xff0c;需要使用 avcodec_free_context释放 需要使用avcodec_free_context 释放 /** * Allocate an AVCodecContext and set its fields to default values. The * resulting struct should be freed with avcodec_free_co…...

HttpClient

是apache旗下的项目 可以用来提供高效的 最新的 功能丰富的 支持HTTP协议的客户端编程工具包&#xff0c;并且支持HTTP协议最新的版本和建议 核心API HttpClient HttpClientsCloseableHttpClientHttpGetHttpPost 发送请求步骤 创建HttpClient对象创建Http请求对象调用H…...

Flink解决延迟数据问题

总结&#xff1a; 水印&#xff1a;对于迟到数据不长 allowedLateness: 迟到时间很长 侧道输出&#xff1a;对于迟到时间特别长 对于延迟数据的理解&#xff1a; 水印机制(水位线、watermark)机制可以帮助我们在短期延迟下&#xff0c;允许乱序数据的到来。 这个机制很好的…...

基于matlab程序实现人脸识别

1.人脸识别流程 1.1.1基本原理 基于YCbCr颜色空间的肤色模型进行肤色分割。在YCbCr色彩空间内对肤色进行了建模发现&#xff0c;肤色聚类区域在Cb—Cr子平面上的投影将缩减&#xff0c;与中心区域显著不同。采用这种方法的图像分割已经能够较为精确的将人脸和非人脸分割开来。…...

ESP32 wifi smartConfig 配网时密码错误导致一直死循环问题解决

项目场景 硬件:ESP32-LyraT-Mini V1.2开发板,使用的是ESP32-WROVER-E 模组。 程序:基于smart_config示例程序测试 问题描述 烧录程序后,debug打印“smartconfig_example: Scan done”信息后,打开手机app“EspTouch”进行配网,如果密码输入正确,正常的debug信息如下:…...

串口通讯介绍

详情学习 12. 串口通讯与终端设备 — [野火]嵌入式Linux基础与应用开发实战指南——基于i.MX6ULL开发板 文档 (embedfire.com) 问题 DB9接口 RS232,RS485 标准DB9接口(串口通信线标准接口)_485接口接线方法9针-CSDN博客 DB9 各引脚定义 1 DCD 载波检测 2 RX 接收数据…...

出于安全考虑,你的平板电脑已设置为禁止安装来源不明的应用,对于这种工业的安卓平板,应该怎么解决问题呢

在一些工业安卓平板上&#xff0c;出于安全考虑&#xff0c;通常会禁止安装来自未知来源的应用程序。这是为了防止恶意软件或不可信的应用程序被安装到设备上。为了绕过这个限制并安装来自未知来源的应用程序&#xff0c;你可以按照以下步骤进行操作&#xff1a; 1. 启用“未知…...

Java技术复习提升 15IO流

先给各位读者致歉 笔者因身体抱恙 未能及时更新 以后会按时更新 和大家一起学习探究~ 第15章 IO流 15.1 文件 文件就是保存数据的地方 文件流 15.2 常用文件操作 创建文件对象构造器和方法 import org.junit.Test;import java.io.File; import java.io.IOException;publ…...

Oracle 19C Data Guard 单实例1+1部署(Duplicate方式)

环境描述 项目主库备库操作系统CentOS 7.9CentOS 7.9数据库版本Oracle 19.3.0.0Oracle 19.3.0.0ORACLE_UNQNAMEhishisdgIP地址10.172.1.10110.172.1.102Hostnamehisdb01hisdb02SIDhishisdb_namehishisdb_unique_namehishisdg 说明 主库和备库建议采用相同服务器配置。主库和…...

网安小白的端口关闭实践

proceeding 扫描 $ nmap --top-ports 10000 10.162.8.227 Starting Nmap 7.94SVN ( https://nmap.org ) at 2024-11-29 17:07 CST Nmap scan report for star (10.162.8.227) Host is up (0.00023s latency). Not shown: 8367 closed tcp ports (conn-refused) PORT ST…...

微软要求 Windows Insider 用户试用备受争议的召回功能

拥有搭载 Qualcomm Snapdragon 处理器的 Copilot PC 的 Windows Insider 计划参与者现在可以试用 Recall&#xff0c;这是一项臭名昭著的快照拍摄 AI 功能&#xff0c;在今年早些时候推出时受到了很多批评。 Windows 营销高级总监 Melissa Grant 上周表示&#xff1a;“我们听…...

nginx反向代理、负载均衡

nginx反向代理、负载均衡 一、反向代理 proxy模块1、作用2、语法3、配置后端服务器记录真实的客户端地址 二、负载均衡 upstream模块2.1 负载均衡作用2.2 调度算法/策略2.3 配置语法 一、反向代理 proxy模块 1、作用 提升业务的性能、并发能力 隐藏后端真实业务服务器的信息&…...

mysql集群NDB方式部署

1. 基本信息 部署机器角色部署路径192.168.0.1管理节点部署目录: /alidata1/mysql-cluster-8.4.3192.168.0.2管理节点192.168.0.3数据/SQL节点数据目录:192.168.0.4数据/SQL节点/alidata1/mysql-cluster-8.4.3/data/ndb-mgmd192.168.0.5数据节点 – 新增/alidata1/mysql-clust…...

Fabric.js 中文文档

Fabric.js 中文文档 基于canvas画布的实用类Fabric.js的使用 4、Fabric.js 常用的方法&事件 Fabric.js 画布 defaultCursor 属性(1) 官网文档地址&#xff1a;http://fabricjs.com/docs/github 地址&#xff1a;https://github.com/fabricjs/fabric.js Demo地址&#x…...

【面试重难点问题】c++中为什么可以函数重载,但是c语言中不可以

本文章是对于“c中为什么可以函数重载&#xff0c;但是c语言中不可以”这个问题的探究&#xff1a; 当然这是一个值得深入探讨的问题。在面对难题时&#xff0c;我们常常会竭尽全力寻找答案&#xff0c;不惜挖掘三尺以探究竟。面对上面这个问题时&#xff0c;理解计算机系统的…...

Elasticsearch优化汇总

文章目录 引言硬件设置优化禁用swap给系统留足够的内存JVM配置使用更快的硬件,使用 SSD 参数优化分片设计增加Buffer大小(增加吞吐量)预热文件系统 cache es查询设计优化预索引数据使用filter代替query字段映射避免使用脚本优化日期搜索为只读索引执行 force-merge预热全局序号…...

【落羽的落羽 C语言篇】指针·之其四

文章目录 一、字符指针变量二、数组指针变量1. 创建2. 数组指针类型3. 二维数组传参的本质 三、函数指针变量1. 创建2. 函数指针类型3. 函数指针的使用4. 分析两句“有趣”的代码&#xff08;doge&#xff09;5. typedef关键字 四、函数指针数组1. 创建2. 函数指针数组的用途—…...

十二、正则表达式、元字符、替换修饰符、手势和对话框插件、字符串截取

1. 正则表达式 1.1 基本使用 <!DOCTYPE html> <html lang"en"><head><meta charset"UTF-8"><meta name"viewport" content"widthdevice-width, initial-scale1.0"><title>Document</title&g…...

嵌入式的应用领域有哪些

首先给大家介绍一下‌‌&#xff0c;STM32是‌意法半导体&#xff08;STMicroelectronics&#xff09;生产的32位微控制器&#xff08;‌MCU&#xff09;系列‌&#xff0c;采用‌ARM Cortex-M内核设计&#xff0c;以其高性能、低功耗和广泛的应用而闻名。‌ 那么意法半导体是在…...

git merge :开发分支与主分支的交互

一、开发分支&#xff08;dev&#xff09;上的代码达到上线的标准后&#xff0c;要合并到 master 分支 git checkout dev git pull git checkout master git merge dev git push -u origin master 二、当master代码改动了&#xff0c;需要更新开发分支&#xff08;dev&#x…...

OGRE 3D----4. OGRE和QML共享opengl上下文

在现代图形应用开发中,OGRE(Object-Oriented Graphics Rendering Engine)和QML(Qt Modeling Language)都是非常流行的工具。OGRE提供了强大的3D渲染能力,而QML则用于构建灵活的用户界面。在某些应用场景中,我们需要在同一个应用程序中同时使用OGRE和QML,并且共享OpenGL…...

ArcGIS 软件中路网数据的制作

内容导读 路网数据是进行网络分析的基础&#xff0c;它是建立网络数据集的数据来源。 本文我们以OSM路网数据为例&#xff0c;详细介绍OSM路网数据从下载&#xff0c;到数据处理&#xff0c;添加属性&#xff0c;完成符合网络分析的网络数据集的全部过程。 01 数据获取 比较…...

Milvus 2.5:全文检索上线,标量过滤提速,易用性再突破!

01. 概览 我们很高兴为大家带来 Milvus 2.5 最新版本的介绍。 在 Milvus 2.5 里&#xff0c;最重要的一个更新是我们带来了“全新”的全文检索能力&#xff0c;之所以说“全新”主要是基于以下两点&#xff1a; 第一&#xff0c;对于全文检索基于的 BM25 算法&#xff0c;我们采…...

Windows常用DOS指令(附案例)

文章目录 1.dir 查看当前目录2.cd 进入指定目录3.md 创建指定目录4.cd> 创建指定文件5.rd 删除指定空目录6.del 删除指定文件7.copy 复制文件8.xcopy 批量复制9.ren 改名10.type 在命令行空窗口打开文件11.cls 清空DOS命令窗口12.chkdsk 检查磁盘使用情况13.time 显示和设置…...

搜索二维矩阵 II(java)

题目描述 编写一个高效的算法来搜索 m x n 矩阵 matrix 中的一个目标值 target 。该矩阵具有以下特性&#xff1a; 每行的元素从左到右升序排列。每列的元素从上到下升序排列。 代码思路&#xff1a; 用暴力算法&#xff1a; class Solution {public boolean searchMatrix(…...

Webpack 的构建流程

Webpack 的构建流程可以概括为以下几个步骤&#xff1a; 1. 初始化&#xff1a; Webpack 读取配置文件&#xff08;webpack.config.js&#xff09;&#xff0c;合并默认配置和命令行参数&#xff0c;初始化Compiler对象。 2. 构建依赖图&#xff1a; 从入口文件开始递归地分…...

Kylin Server V10 下 RocketMQ 主备自动切换模式部署

一、NameServer简介 NameServer 是一个注册中心,提供服务注册和服务发现的功能。NameServer 可以集群部署,集群中每个节点都是对等的关系,节点之间互不通信。 服务注册 Broker 启动的时候会向所有的 NameServer 节点进行注册,注意这里是向集群中所有的 NameServer 节点注册…...

Linux启动中出现“psi: inconsistent task state!”错误可能原因

在Linux系统中&#xff0c;psi: inconsistent task state! 异常日志通常与 PSI&#xff08;Pressure Stall Information&#xff09;相关。PSI 是 Linux 内核中的一个特性&#xff0c;用于监控系统资源的压力情况&#xff0c;如 CPU、内存和 I/O 等。该日志信息表明在处理任务状…...

FCBP 认证考试要点摘要

理论知识 数据处理与分析&#xff1a;包括数据的收集、清洗、转换、存储等基础操作&#xff0c;以及数据分析方法&#xff0c;如描述性统计分析、相关性分析、数据挖掘算法等的理解和应用 。数据可视化&#xff1a;涉及图表类型的选择与应用&#xff0c;如柱状图、折线图、饼图…...

ubuntu防火墙入门(一)——设置服务、关闭端口

本机想通过git clone gitgithub.com:skumra/robotic-grasping.git下载代码&#xff0c;firewall-config中需要为当前区域的防火墙开启SSH服务吗 是的&#xff0c;如果你想通过 git clone gitgithub.com:skumra/robotic-grasping.git 使用 SSH 协议从 GitHub 下载代码&#xff0…...

yt6801 ubuntu有线连接驱动安装

耀世16pro的有线网卡驱动安装 下载地址: YT6801 千兆PCIE以太网控制器芯片 1. 创建安装目录 mkdir yt68012. 解压驱动文件 unzip yt6801-linux-driver-1.0.27.zip -d yt68013. 进入驱动目录 cd yt68014. 安装驱动 以 root 权限运行安装脚本&#xff1a; sudo su ./yt_ni…...

ASP.NET Core Web API 控制器

文章目录 一、基类&#xff1a;ControllerBase二、API 控制器类属性三、使用 Get() 方法提供天气预报结果 在深入探讨如何编写自己的 PizzaController 类之前&#xff0c;让我们先看一下 WeatherController 示例中的代码&#xff0c;了解它的工作原理。 在本单元中&#xff0c;…...

【论文笔记】Tool Learning with Foundation Models 论文笔记

Tool Learning with Foundation Models 论文笔记 文章目录 Tool Learning with Foundation Models 论文笔记摘要背景&#xff1a;工作&#xff1a; 引言工具学习的发展本文工作&#xff08;大纲&目录&#xff09; 背景2.1 工具使用的认知起源2.2 工具分类&#xff1a;用户界…...

STM32 + CubeMX + 串口 + IAP升级

这篇文章分享一个简单的串口IAP Demo&#xff0c;实现使用串口更新我们自己的App程序。 目录 一、IAP简介二、Stm32CubeMx配置三、Boot代码及配置1、代码2、配置 四、App代码及配置1、代码2、配置 五、效果展示 一、IAP简介 IAP介绍可以在网上找找&#xff0c;相关资料很多&am…...