ORACLE 19C RAC DIAG进程消耗大量内存的分析

news2025/2/25 11:41:10

近期一个ORACLE 19C的RAC环境,多次出现数据库实例的后台进程DIAG消耗很多内存(达到20G+),节点1、节点2都出现过次问题。
问题分析:通过对DIAG进程TRACE分析,结合在ORACLE官方后台进行问题、BUG查询匹配,该进程占用内存的现象不是持续增大,而是突然增大。目前分析是心跳网络不稳定时DIAG进程产生大量TRACE时的内存泄漏,导致DIAG进程占用很多内存(mos:Database Ora_dia0_* Process Consumes High Memory Utilization (文档 ID 2787583.1),此问题一般为私网的性能较差导致)。
处理办法:
1、之前是对DIAG进程人工KILL后释放内存(进程KILL后会自动启动不影响业务);后续考虑增加脚本在后台KILL此进程。
2、增加主机层的OSW监控工具监控网络性能,监控数据保留15天,持续监控分析。

相关日志如下:

1、消耗很多内存的DIAG进行信息截图,截图如下:

2、分析DIAG进程的TRACE日志,大量的IPCLW开头的日志

*** 2024-04-12T21:20:03.747180+08:00
2024-04-12 21:20:03.747 :kjzgrcfg_finalize(): Reconfig finished inc:8 state:5
2024-04-12 21:20:03.789 :kjzgrcfg_msghdlr(): Step 1 remote_inc:8 prop_inc:8 state:5 master:0
IPCLW:[0.123777436]{E}[WAIT]:PROTO: [1712928004190595]RETRANS DBG local acnh 0x7fcfc4721ca8 dump:
IPCLW:[0.123777437]{-}[WAIT]:UTIL: [1712928004190595]  ACNH 0x7fcfc4721ca8 State: 1 SMSN: 69887638 PKT(69906133.325238309) # Pending: 4096
IPCLW:[0.123777438]{-}[WAIT]:UTIL: [1712928004190595]   Peer: DIA0.KSXP_diag.67881 AckSeq: 325234213
IPCLW:[0.123777439]{-}[WAIT]:UTIL: [1712928004190595]   Flags: 0x20000000 IHint: 0x5e64fe2a0000001f THint: 0x3218cc490000001c 
IPCLW:[0.123777440]{-}[WAIT]:UTIL: [1712928004190595]   Local Address: 169.254.12.225:60038 Remote Address: 169.254.1.19:51696
IPCLW:[0.123777441]{-}[WAIT]:UTIL: [1712928004190595]   Remote PID: ver 0 flags 1 trans 2 tos 0 opts 0 xdata3 28b1 xdata2 e85e640e
IPCLW:[0.123777442]{-}[WAIT]:UTIL: [1712928004190595]             : mmsz 32768 mmr 4096 mms 4096 xdata 101630a2
IPCLW:[0.123777443]{-}[WAIT]:UTIL: [1712928004190595]   IVPort: 63416 TVPort: 12450 IMPT: 47425 RMPT: 10417   Pending Sends: Yes Unacked Sends: Yes 
IPCLW:[0.123777444]{-}[WAIT]:UTIL: [1712928004190595]   Send Engine Queued: Yes sshdl -1 ssts 0 rtts 1712928004190837 snderrchk 5 creqcnt 1 credits 0/8
IPCLW:[0.123777445]{-}[WAIT]:UTIL: [1712928004190595]   Unackd Messages 69902037 -> 69906132. SSEQ 325234213 Send Time: INVALID TIME SMSN # Xmits: 3977664 EMSN INVALID TIME
IPCLW:[0.123777446]{-}[WAIT]:UTIL: [1712928004190595]  Pending send queue: 
IPCLW:[0.123777447]{-}[WAIT]:UTIL: [1712928004190595]    [0] mbuf 0x7fcfc47467d0 MSN 69902037 Seq 325234213 -> 325234214 # XMits: 3977664
IPCLW:[0.123777448]{-}[WAIT]:UTIL: [1712928004190595]    [1] mbuf 0x7fcfc4746bf0 MSN 69902038 Seq 325234214 -> 325234215 # XMits: 3977663
IPCLW:[0.123777449]{-}[WAIT]:UTIL: [1712928004190595]    [2] mbuf 0x7fcfc47463b0 MSN 69902039 Seq 325234215 -> 325234216 # XMits: 3977662
IPCLW:[0.123777450]{-}[WAIT]:UTIL: [1712928004190595]    [3] mbuf 0x7fcfc4745f90 MSN 69902040 Seq 325234216 -> 325234217 # XMits: 3977661
IPCLW:[0.123777451]{-}[WAIT]:UTIL: [1712928004190595]    [4] mbuf 0x7fcfc4745b70 MSN 69902041 Seq 325234217 -> 325234218 # XMits: 3977660
IPCLW:[0.123777452]{-}[WAIT]:UTIL: [1712928004190595]    [5] mbuf 0x7fcfc4745750 MSN 69902042 Seq 325234218 -> 325234219 # XMits: 3977659
IPCLW:[0.123777453]{-}[WAIT]:UTIL: [1712928004190595]    [6] mbuf 0x7fcfc4745330 MSN 69902043 Seq 325234219 -> 325234220 # XMits: 3977658
IPCLW:[0.123777454]{-}[WAIT]:UTIL: [1712928004190595]    [7] mbuf 0x7fcfc4744f10 MSN 69902044 Seq 325234220 -> 325234221 # XMits: 3977657
IPCLW:[0.123777455]{-}[WAIT]:UTIL: [1712928004190595]    [8] mbuf 0x7fcfc4744af0 MSN 69902045 Seq 325234221 -> 325234222 # XMits: 0
IPCLW:[0.123777456]{-}[WAIT]:UTIL: [1712928004190595]    [9] mbuf 0x7fcfc47446d0 MSN 69902046 Seq 325234222 -> 325234223 # XMits: 0
IPCLW:[0.123777457]{-}[WAIT]:UTIL: [1712928004190595]    [10] mbuf 0x7fcfc47442b0 MSN 69902047 Seq 325234223 -> 325234224 # XMits: 0
IPCLW:[0.123777458]{-}[WAIT]:UTIL: [1712928004190595]    [11] mbuf 0x7fcfc4743e90 MSN 69902048 Seq 325234224 -> 325234225 # XMits: 0
IPCLW:[0.123777459]{-}[WAIT]:UTIL: [1712928004190595]    [12] mbuf 0x7fcfc4743a70 MSN 69902049 Seq 325234225 -> 325234226 # XMits: 0
IPCLW:[0.123777460]{-}[WAIT]:UTIL: [1712928004190595]    [13] mbuf 0x7fcfc4743650 MSN 69902050 Seq 325234226 -> 325234227 # XMits: 0
IPCLW:[0.123777461]{-}[WAIT]:UTIL: [1712928004190595]    [14] mbuf 0x7fcfc4743230 MSN 69902051 Seq 325234227 -> 325234228 # XMits: 0
IPCLW:[0.123777462]{-}[WAIT]:UTIL: [1712928004190595]    [15] mbuf 0x7fcfc4742e10 MSN 69902052 Seq 325234228 -> 325234229 # XMits: 0
IPCLW:[0.123777463]{-}[WAIT]:UTIL: [1712928004190595]    [16] mbuf 0x7fcfc47429f0 MSN 69902053 Seq 325234229 -> 325234230 # XMits: 0
IPCLW:[0.123777464]{-}[WAIT]:UTIL: [1712928004190595]    [17] mbuf 0x7fcfc47425d0 MSN 69902054 Seq 325234230 -> 325234231 # XMits: 0
IPCLW:[0.123777465]{-}[WAIT]:UTIL: [1712928004190595]    [18] mbuf 0x7fcfc47421b0 MSN 69902055 Seq 325234231 -> 325234232 # XMits: 0
IPCLW:[0.123777466]{-}[WAIT]:UTIL: [1712928004190595]    [19] mbuf 0x7fcfc4741d90 MSN 69902056 Seq 325234232 -> 325234233 # XMits: 0
IPCLW:[0.123777467]{-}[WAIT]:UTIL: [1712928004190595]    [20] mbuf 0x7fcfc4741970 MSN 69902057 Seq 325234233 -> 325234234 # XMits: 0
IPCLW:[0.123777468]{-}[WAIT]:UTIL: [1712928004190595]    [21] mbuf 0x7fcfc4741550 MSN 69902058 Seq 325234234 -> 325234235 # XMits: 0
IPCLW:[0.123777469]{-}[WAIT]:UTIL: [1712928004190595]    [22] mbuf 0x7fcfc4741130 MSN 69902059 Seq 325234235 -> 325234236 # XMits: 0
IPCLW:[0.123777470]{-}[WAIT]:UTIL: [1712928004190595]    [23] mbuf 0x7fcfc4740d10 MSN 69902060 Seq 325234236 -> 325234237 # XMits: 0
IPCLW:[0.123777471]{-}[WAIT]:UTIL: [1712928004190595]    [24] mbuf 0x7fcfc47408f0 MSN 69902061 Seq 325234237 -> 325234238 # XMits: 0
IPCLW:[0.123777472]{-}[WAIT]:UTIL: [1712928004190595]    [25] mbuf 0x7fcfc47404d0 MSN 69902062 Seq 325234238 -> 325234239 # XMits: 0
IPCLW:[0.123777473]{-}[WAIT]:UTIL: [1712928004190595]    [26] mbuf 0x7fcfc47400b0 MSN 69902063 Seq 325234239 -> 325234240 # XMits: 0
IPCLW:[0.123777474]{-}[WAIT]:UTIL: [1712928004190595]    [27] mbuf 0x7fcfc473fc90 MSN 69902064 Seq 325234240 -> 325234241 # XMits: 0
IPCLW:[0.123777475]{-}[WAIT]:UTIL: [1712928004190595]    [28] mbuf 0x7fcfc473f870 MSN 69902065 Seq 325234241 -> 325234242 # XMits: 0
IPCLW:[0.123777476]{-}[WAIT]:UTIL: [1712928004190595]    [29] mbuf 0x7fcfc473f450 MSN 69902066 Seq 325234242 -> 325234243 # XMits: 0
IPCLW:[0.123777477]{-}[WAIT]:UTIL: [1712928004190595]    [30] mbuf 0x7fcfc473f030 MSN 69902067 Seq 325234243 -> 325234244 # XMits: 0
IPCLW:[0.123777478]{-}[WAIT]:UTIL: [1712928004190595]    [31] mbuf 0x7fcfc473ec10 MSN 69902068 Seq 325234244 -> 325234245 # XMits: 0
IPCLW:[0.123777479]{-}[WAIT]:UTIL: [1712928004190595]    [32] mbuf 0x7fcfc473e7f0 MSN 69902069 Seq 325234245 -> 325234246 # XMits: 0
IPCLW:[0.123777480]{-}[WAIT]:UTIL: [1712928004190595]    [33] mbuf 0x7fcfc473e3d0 MSN 69902070 Seq 325234246 -> 325234247 # XMits: 0
IPCLW:[0.123777481]{-}[WAIT]:UTIL: [1712928004190595]    [34] mbuf 0x7fcfc473dfb0 MSN 69902071 Seq 325234247 -> 325234248 # XMits: 0
IPCLW:[0.123777482]{-}[WAIT]:UTIL: [1712928004190595]    [35] mbuf 0x7fcfc473db90 MSN 69902072 Seq 325234248 -> 325234249 # XMits: 0
IPCLW:[0.123777483]{-}[WAIT]:UTIL: [1712928004190595]    [36] mbuf 0x7fcfc473d770 MSN 69902073 Seq 325234249 -> 325234250 # XMits: 0
IPCLW:[0.123777484]{-}[WAIT]:UTIL: [1712928004190595]    [37] mbuf 0x7fcfc473d350 MSN 69902074 Seq 325234250 -> 325234251 # XMits: 0
IPCLW:[0.123777485]{-}[WAIT]:UTIL: [1712928004190595]    [38] mbuf 0x7fcfc473cf30 MSN 69902075 Seq 325234251 -> 325234252 # XMits: 0
IPCLW:[0.123777486]{-}[WAIT]:UTIL: [1712928004190595]    [39] mbuf 0x7fcfc473cb10 MSN 69902076 Seq 325234252 -> 325234253 # XMits: 0
IPCLW:[0.123777487]{-}[WAIT]:UTIL: [1712928004190595]    [40] mbuf 0x7fcfc473c6f0 MSN 69902077 Seq 325234253 -> 325234254 # XMits: 0
IPCLW:[0.123777488]{-}[WAIT]:UTIL: [1712928004190595]    [41] mbuf 0x7fcfc473c2d0 MSN 69902078 Seq 325234254 -> 325234255 # XMits: 0
IPCLW:[0.123777489]{-}[WAIT]:UTIL: [1712928004190595]    [42] mbuf 0x7fcfc473beb0 MSN 69902079 Seq 325234255 -> 325234256 # XMits: 0
IPCLW:[0.123777490]{-}[WAIT]:UTIL: [1712928004190595]    [43] mbuf 0x7fcfc473ba90 MSN 69902080 Seq 325234256 -> 325234257 # XMits: 0
IPCLW:[0.123777491]{-}[WAIT]:UTIL: [1712928004190595]    [44] mbuf 0x7fcfc473b670 MSN 69902081 Seq 325234257 -> 325234258 # XMits: 0
IPCLW:[0.123777492]{-}[WAIT]:UTIL: [1712928004190595]    [45] mbuf 0x7fcfc473b250 MSN 69902082 Seq 325234258 -> 325234259 # XMits: 0
IPCLW:[0.123777493]{-}[WAIT]:UTIL: [1712928004190595]    [46] mbuf 0x7fcfc473ae30 MSN 69902083 Seq 325234259 -> 325234260 # XMits: 0
IPCLW:[0.123777494]{-}[WAIT]:UTIL: [1712928004190595]    [47] mbuf 0x7fcfc473aa10 MSN 69902084 Seq 325234260 -> 325234261 # XMits: 0
IPCLW:[0.123777495]{-}[WAIT]:UTIL: [1712928004190595]    [48] mbuf 0x7fcfc473a5f0 MSN 69902085 Seq 325234261 -> 325234262 # XMits: 0
IPCLW:[0.123777496]{-}[WAIT]:UTIL: [1712928004190595]    [49] mbuf 0x7fcfc473a1d0 MSN 69902086 Seq 325234262 -> 325234263 # XMits: 0
IPCLW:[0.123777497]{-}[WAIT]:UTIL: [1712928004190595]    [50] mbuf 0x7fcfc4739db0 MSN 69902087 Seq 325234263 -> 325234264 # XMits: 0
IPCLW:[0.123777498]{-}[WAIT]:UTIL: [1712928004190595]    [51] mbuf 0x7fcfc4739990 MSN 69902088 Seq 325234264 -> 325234265 # XMits: 0
IPCLW:[0.123777499]{-}[WAIT]:UTIL: [1712928004190595]    [52] mbuf 0x7fcfc4739570 MSN 69902089 Seq 325234265 -> 325234266 # XMits: 0
IPCLW:[0.123777500]{-}[WAIT]:UTIL: [1712928004190595]    [53] mbuf 0x7fcfc4739150 MSN 69902090 Seq 325234266 -> 325234267 # XMits: 0
IPCLW:[0.123777501]{-}[WAIT]:UTIL: [1712928004190595]    [54] mbuf 0x7fcfc4738d30 MSN 69902091 Seq 325234267 -> 325234268 # XMits: 0
IPCLW:[0.123777502]{-}[WAIT]:UTIL: [1712928004190595]    [55] mbuf 0x7fcfc4738910 MSN 69902092 Seq 325234268 -> 325234269 # XMits: 0
 

3、MOS文档中关于此问题描述

Oracle Database - Enterprise Edition - Version 19.8.0.0.0 and later
Database ora_dia0_* process consumes High Memory utilization
<Instance>_dia0_21668_base_5.trc
==============================
*** 2021-06-07T23:02:45.794273-07:00 (CDB$ROOT(1))
2021-06-07 23:02:45.794 :kjzgrcfg_finalize(): Reconfig finished inc:31 state:5
2021-06-07 23:02:45.800 :kjzgrcfg_msghdlr(): Step 1 remote_inc:31 prop_inc:31 state:5 master:2
IPCLW:[0.124755339]{E}[WAIT]:PROTO: [1623132166001387]RETRANS DBG local acnh 0x7fe9aa139530 dump:
IPCLW:[0.124755340]{-}[WAIT]:UTIL: [1623132166001387] ACNH 0x7fe9aa139530 State: 1 SMSN:
1655824697 PKT(1662191011.496113055) # Pending: 4096 >>>>>>>>>>>>>>>>>>>>>>>
IPCLW:[0.124755341]{-}[WAIT]:UTIL: [1623132166001387] Peer: DIA0.KSXP_diag.30620 AckSeq: 496108959
IPCLW:[0.124755342]{-}[WAIT]:UTIL: [1623132166001387] Flags: 0x20000000 IHint: 0x1d07ad590000001f
THint: 0x52fe03630000001f
IPCLW:[0.124755343]{-}[WAIT]:UTIL: [1623132166001387] Local Address: 192.xxx.xx.120:39061 Remote
Address: 192.xxx.12.xxx:35575 >>>>>>>>>>>>>>>>>>>>>>>>>
IPCLW:[0.124755344]{-}[WAIT]:UTIL: [1623132166001387] Remote PID: ver 0 flags 1 trans 2 tos 0 opts 0
xdata3 8227 xdata2 b8300501
IPCLW:[0.124755345]{-}[WAIT]:UTIL: [1623132166001387] : mmsz 32768 mmr 4096 mms 4096 xdata
b883f95f
IPCLW:[0.124755346]{-}[WAIT]:UTIL: [1623132166001387] IVPort: 55103 TVPort: 63839 IMPT: 52824
RMPT: 33319 Pending Sends: Yes Unacked Sends: Yes >>>>>>>>>>>>>>>>>>>>
IPCLW:[0.124755347]{-}[WAIT]:UTIL: [1623132166001387] Send Engine Queued: Yes sshdl -1 ssts 0 rtts
1623132166002134 snderrchk 5 creqcnt 1 credits 0/8
IPCLW:[0.124755348]{-}[WAIT]:UTIL: [1623132166001387] Unackd Messages 1662186915 ->
1662191010. SSEQ 496108959 Send Time: INVALID TIME SMSN # Xmits: 4227520 EMSN INVALID TIME
>>>>>>>>>
IPCLW:[0.124755349]{-}[WAIT]:UTIL: [1623132166001387
MOS文档中的案例信息与TRACE是匹配的,官方文档对此解释是心跳网络异常,需要检查处理网络问题:
CAUSE
Packet Reassembly Failure at Interconnect
SOLUTION
Involve System Admin for fixing the packet reassembly failure/Packet drop at interconnect.
4、检查网络状态,有少量报错,符合文档上说的现象。

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

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

相关文章

什么样的行业适合做私域?

私域营销适用于各种行业&#xff0c;但以下几个行业尤其适合进行私域营销&#xff1a; 1、零售行业&#xff1a;私域营销可以帮助零售企业建立与顾客的直接联系&#xff0c;提高顾客忠诚度和复购率。通过私域营销&#xff0c;零售企业可以进行个性化推荐、定制化服务&#xff…

VALSE 2024 Workshop报告分享┆面向实际场景体验的多模态大模型DeepSeek VL

2024年视觉与学习青年学者研讨会&#xff08;VALSE 2024&#xff09;于5月5日到7日在重庆悦来国际会议中心举行。本公众号将全方位地对会议的热点进行报道&#xff0c;方便广大读者跟踪和了解人工智能的前沿理论和技术。欢迎广大读者对文章进行关注、阅读和转发。文章是对报告人…

视频改字祝福/豪车装X系统源码/小程序uniapp前端源码

uniapp视频改字祝福小程序源码&#xff0c;全开源。创意无限&#xff01;AI视频改字祝福&#xff0c;豪车装X系统源码开源&#xff0c;打造个性化祝福视频不再难&#xff01; 想要为你的朋友或家人送上一份特别的祝福&#xff0c;让他们感受到你的真诚与关怀吗&#xff1f;现在…

通过Nginx转发admin连接licloud-api-develop接口

1.需求配置 在本地环境部署一套开发环境&#xff0c;方便开发金磊调试功能 所使用到的服务有nginx&#xff0c;mysql&#xff0c;rabbitmq&#xff0c;redis&#xff0c;docker 服务安装网上都有教程这里就不一一列举出来了&#xff0c;服务都配置好之后 开始组建开发环境 2…

Java进阶05 时间API异常

Java进阶05 一、递归算法 方法直接&#xff08;自己调自己&#xff09;或间接&#xff08;方法调其他方法&#xff0c;其他方法又回调自己&#xff09;调用自身 1、递归思想 把一个复杂的问题层层转化为一个与原问题相似的规模较小的问题来求解。需要注意&#xff0c;设计递…

商务分析方法与工具(五):Python的趣味快捷-文件和文件夹操作自动化

Tips&#xff1a;"分享是快乐的源泉&#x1f4a7;&#xff0c;在我的博客里&#xff0c;不仅有知识的海洋&#x1f30a;&#xff0c;还有满满的正能量加持&#x1f4aa;&#xff0c;快来和我一起分享这份快乐吧&#x1f60a;&#xff01; 喜欢我的博客的话&#xff0c;记得…

考情分析 | 2025年西北工业大学计算机考研考情分析!

西北工业简称西工大&#xff08;英文缩写NPU&#xff09;&#xff0c;大学坐落于古都西安&#xff0c;是我国唯一一所以同时发展航空、航天、航海工程教育和科学研究为特色&#xff0c;以工理为主&#xff0c;管、文、经、法协调发展的研究型、多科性和开放式的科学技术大学。十…

如果出现一个工具,可以让前端开发彻底不用再手写UI,这个工具意义大吗?干货!

求这样的一个工具&#xff0c;可以让后端开发、嵌入式开发、产品经理、UI设计师都能用&#xff0c;注意&#xff0c;不是在一个简单的静态页生成&#xff0c;也不是类似飞冰那种 generator &#xff0c;而是真正让设计师和开发者在各自的那侧达成自治&#xff0c;可以做到吗&am…

电-热耦合市场联合出清!考虑均衡约束的综合能源系统电-热分配方法程序代码!

前言 随着现代城市面临环境问题&#xff0c;原来燃煤的水和空间供暖设备已逐渐被电锅炉和热泵等电气设备所取代。此外&#xff0c;集中生产热能并通过管网分配热能的区域供暖系统&#xff0c;由于其更高的效率&#xff0c;在冬季漫长寒冷的国家和地区越来越受欢迎。供暖设备的…

牛客题-链表内区间反转

链表内区间反转 这是代码 typedef struct ListNode listnode; struct ListNode* reverseBetween(struct ListNode* head, int m, int n ) {if (head NULL) {return NULL;}listnode* findhead head;listnode* findtail head;listnode* prev NULL;int count1 m;int count2…

CTF-reverse二维四向迷宫路径求解

二维四向迷宫是一个re中的常考点&#xff0c;说不上难&#xff0c;但也不简单&#xff0c;本篇记录了常规的二维四向迷宫解题套路以及帮助快速解题的脚本 可能你看我的教程会觉得十分繁琐&#xff0c;但实际只要你用了一次熟练之后&#xff0c;基本都是拿到迷宫就一题一分钟解决…

深入学习Linux内核页框回收

目录 算法 1.选择目标页 2.PFRA设计 3.反向映射 3.1.匿名页的反向映射 3.2.try_to_unmap_anon()函数 3.3.try_to_unmap_one()函数 映射页的反向映射 优先搜索树 try_to_unmap_file()函数 PFRA实现 最近最少使用(LRU)链表 在LRU链表之间移动页 mark_page_accessed(…

【优选算法】——双指针——Leetcode——283.移动零

目录 ​编辑 1.题目 2. 解法&#xff08;快排的思想&#xff1a;数组划分区间-数组分两块&#xff09;&#xff1a; 1.算法思路&#xff1a; 2.算法流程&#xff1a; 3.代码实现 1.C语言 2.C 1.题目 283. 移动零 提示 给定一个数组 nums&#xff0c;编写一个函数将所有…

每日一题 非对称之美

题目描述 I-非对称之美_牛客小白月赛31 (nowcoder.com) 题目解析 贪心算法的应用 考虑以下情况&#xff1a;当字符串中的字符全部相同时&#xff0c;即使删除任意一个字符&#xff0c;也无法使其成为一个回文串。这种情况下&#xff0c;我们无法直接套用上述的逐步比较方法。…

【Android】Room数据库的简单使用方法

Room数据库的使用方法 目录 1、添加Room数据库的依赖2、Entity——定义实体类 2.1 定义主键——PrimaryKey2.2 字段注解——ColumnInfo 3、Dao——定义数据访问对象4、Database——数据库 4.1 通过回调观察数据库是否创建成功 5、使用时注意点6、编写异步 DAO 查询 6.1 写异步…

LabVIEW波浪发电平台浮筒取能效率数据采集系统

LabVIEW波浪发电平台浮筒取能效率数据采集系统 随着化石能源的逐渐减少以及能源价格的上升&#xff0c;寻找可替代的、可再生的、清洁的能源成为了世界各国的共识。波浪能作为一种重要的海洋能源&#xff0c;因其巨大的潜力和清洁性&#xff0c;近年来受到了广泛关注。开发了一…

数据结构学习——二叉树

1. 树概念及结构 1.1 树的概念 树是一种非线性的数据结构&#xff0c;它是由n&#xff08;n>0&#xff09;个有限结点组成一个具有层次关系的集合。把它叫做树是因为它看起来像一棵倒挂的树&#xff0c;也就是说它是根朝上&#xff0c;而叶朝下的。 有一个特殊的结点&…

基于Springboot的校园健康驿站管理系统(有报告)。Javaee项目,springboot项目。

演示视频&#xff1a; 基于Springboot的校园健康驿站管理系统&#xff08;有报告&#xff09;。Javaee项目&#xff0c;springboot项目。 项目介绍&#xff1a; 采用M&#xff08;model&#xff09;V&#xff08;view&#xff09;C&#xff08;controller&#xff09;三层体系…

C语言:指针(1)

1. 内存和地址 内存划分为⼀个个的内存单元&#xff0c;每个内存单元的⼤⼩取1个字节。 计算机中常⻅的单位&#xff08;补充&#xff09;&#xff1a; ⼀个⽐特位可以存储⼀个2进制的位1或者0 C语⾔中给地址起了新的名字叫&#xff1a;指针。 内存单元的编号地址指针。 1.…

重写muduo之Thread、EventLoopThread、EventLoopThreadPool

目录 1、概述 2、Thread 2.1 Thread.h 3、EventLoopThread 3.1 EventLoopThread.h 3.2 EventLoopThread.cc 4、 EventLoopThreadPool 4.1 EventLoopThreadPool.h 4.2 EventLoopThreadPool.cc 1、概述 管理事件循环线程的调度的 打包了一个EventLoop和线程&#xff0c;…