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

JVM的一些知识

JVM简介

JVM 是 Java Virtual Machine 的简称,意为 Java 虚拟机。
虚拟机是指通过软件模拟的具有完整硬件功能的、运行在一个完全隔离的环境中的完整计算机系统。常见的虚拟机:JVM、VMwave、Virtual Box。
JVM 和其他两个虚拟机的区别:

  1. VMwave与VirtualBox是通过软件模拟物理CPU的指令集,物理系统中会有很多的寄存器;
  2. JVM则是通过软件模拟Java字节码的指令集,JVM中只是主要保留了PC寄存器,其他的寄存器都进
    行了裁剪。
    JVM 是一台被定制过的现实当中不存在的计算机。

JVM 类加载的过程

  1. 加载
    Java程序的 .Java 文件, 通过 javac 编译成 .class 文件, 存储在硬盘上, 当运行 Java 进程的时候, jvm 需要读去 .class 文件里面的内容,
  2. 验证
    验证读到的 .class 文件的数据是否正确, 是否合法 (在 Java 的标准文档中, 明确定义了 .class 文件的格式是什么样的)
  3. 准备
    根据读取到的内容尾类的静态变量分配内存, 将其设置为初始值比如 boolean 就设置成 false, 对象引用就设置成 null, 不会进行赋值的操作
    (创造一个内存空间, 全部设为初始值)
  4. 解析
    Java虚拟机将常量池内的符号引用替换成了直接引用 (符号引用相当于就是一个名字, 比如 String s = “hello” 符号引用类似 hello, 直接引用可以理解成内存地址比如 0x19)
  5. 初始化
    针对类对象做最后的初始化操作, 执行静态成员的赋值语句 (此时静态代码块以及父类也会在这一阶段被加载)

死亡对象的判断算法

1. 引用计数法

给对象增加一个计数器, 每当有一个地方引用这个对象, 计数器就 +1, 当引用失效的时候就 -1, 一旦对象的计数器变成了 0, 就代表失效
但是主流的 jvm 都没有使用引用计数法, 主要是无法解决循环引用的问题

public class Test {public Object instance = null;private static int _1MB = 1024 * 1024;private byte[] bigSize = new byte[2 * _1MB];public static void testGC() { Test test1 = new Test(); Test test2 = new Test(); test1.instance = test2; test2.instance = test1; test1 = null;test2 = null;// 强制jvm进行垃圾回收System.gc(); }public static void main(String[] args) {testGC(); }}  

比如以上的情况, 就会发生无法回收的情况, 但是其实也引入了回路检测的算法, 可以解决这种问题

2. 可达性分析算法

在这里插入图片描述

通过一系列成为 GC Root 的对象, 进行不断向下搜索
(类似 jvm 手上有一份名单, 然后所有的 root 进行向下搜索, 如果发现有无法到达的对象, 即可说明该对象是不可用的)

GC Root 有很多个比如

  1. 栈上的局部变量
  2. 元数据区的静态变量
  3. 常量池引用指向的对象

垃圾回收算法

1. 标记清除算法

先标记再清除, 根据上述可达性算法, 先从所有的 GC Root 遍历一遍, 标记为存活对象, 之后遍历清除没有被标记的对象, 从而回收内存

优点

  1. 实现简单
  2. 无需移动对象

缺点

清除后会产生内存碎片, 导致内存的利用率变低

2. 复制算法

内存区域直接划分成两块, 只使用其中一块, 单进行垃圾回收的时候, 将存活对象从当前区域, 直接移动到另一块区域, 对当前区域进行整体回收操作

优点

空间碎片减少

缺点

  1. 空间利用率较低
  2. 对象多的时候, 复制成本大

3. 标记整理算法

一样通过 GC Root 对所有对象进行可达性的判断, 标记一下对象是否存活, 对存活的对象进行整理, 连续排列, 清理出连续的空间

优点

解决了内存碎片的问题

缺点

移动整理对象会产生搬运的开销

4. 分代回收算法

在这里插入图片描述

解析
  1. 分成三个区, 分别是伊甸区、幸存区、老年区
  2. 开始 new 出来的对象, 都会先放在伊甸区 (伊甸区是比较大的) , 根据经验规律 90% 的对象都是活不过第一轮 GC, 所以剩下活下来的会放到其中一个幸存区, 然后清空另一个幸存者区和伊甸区, 下一轮对象加入伊甸区再次 GC 后, 将幸存的对象和存放上一轮 GC 的存活对象放入到另一个幸存者区, 然后回收伊甸区和另一个幸存区的空间
  3. 当经历过好几轮的 GC 之后, 就会把多轮存活的对象转移到老年代
  4. 老年代的 GC 频率相较伊甸区的 GC 频率要低很多

优点

  1. 提高了回收的效率
  2. 减少了 STW 的时间

缺点

堆内存进行分区管理, 较为复杂

双亲委派模型

输入: 类的全限定名 , 类似于 java.lang.String

在这里插入图片描述

目的

防止用户写的类, 把标准库的类给覆盖掉, 保证标准库的类优先级最高, 扩展库其次, 第三方库的优先级最低

JVM内存区域的划分

1. 程序计数器, 保存了下一条要执行的指令的地址 (下一条指令是 Java的字节码)
2. 堆, jvm 最大的空间, new 出来的对象都在堆上
3.
1. Java 虚拟机栈, 运行 Java 代码的方法调用关系, 存储函数中的局部变量, 函数的形参, 函数之间的调用关系
2. 本地方法栈, jvm 中 c++ 代码的函数调用关系
4. 元数据区(方法区), 代码中涉及到的类信息, 以及类的 static 属性, 静态变量

在这里插入图片描述

堆(线程共享)

堆是所有线程共享的, 分为新生代和老生代, 在堆上的 GC 操作在上述的分代算法有介绍

方法区(元数据区) (线程共享)

用来存储被虚拟机加载的类信息、静态变量等数据

Java虚拟机栈(线程私有的)

每个方法在执行的时候都会创建栈帧存储局部变量, 方法出口等等, 常说的堆内存, 栈内存指的就是虚拟机栈

在这里插入图片描述

  1. 局部变量表: 存储方法参数和局部变量
  2. 操作栈: 每个方法会生成一个先进后出的操作栈
  3. 动态链接: 指向常量池的方法引用
  4. 方法返回地址: PC 寄存器的地址

本地方法栈(线程私有)

本地方法栈和虚拟机栈类似, 但是 Java 虚拟机栈是给 jvm 使用的, 本地方法栈是给本地方法使用的

程序计数器(线程私有)

用来记录当前线程执行的行号

当前线程如果执行的是一个 Java 的方法, 这个计数器记录的是正在执行的虚拟机字节码指令的地址; 如果执行的是一个 Native 方法, 计数器的值为空 (因为调用的是其他语言的代码, 计数器并没有意义)

!!! 计数器是唯一一个在 jvm 规范中没有规定任何 OOM 情况的区域 (也就是内存溢出)

相关文章:

JVM的一些知识

JVM简介 JVM 是 Java Virtual Machine 的简称,意为 Java 虚拟机。 虚拟机是指通过软件模拟的具有完整硬件功能的、运行在一个完全隔离的环境中的完整计算机系统。常见的虚拟机:JVM、VMwave、Virtual Box。 JVM 和其他两个虚拟机的区别: VMw…...

SpringCloud网关:Gateway路由配置与过滤器链

文章目录 引言一、Gateway基本架构二、路由配置方式2.1 配置文件方式2.2 Java代码方式 三、内置断言工厂四、内置过滤器工厂4.1 请求路径相关过滤器4.2 请求和响应头过滤器4.3 功能性过滤器 五、自定义过滤器5.1 自定义GatewayFilter5.2 自定义过滤器工厂 六、全局过滤器总结 引…...

Git 分支使用规范全解(多人协作开发适用)

🚀 Git 分支使用规范全解(多人协作开发适用) 本文将为你梳理一套清晰、标准、适合企业/团队使用的 Git 分支管理策略,适用于前后端、边缘端、AI项目等多种场景。 🧩 为什么要规范分支管理? 防止多人协作混乱、冲突频发清晰区分:开发中 / 待发布 / 已上线 的版本快速定…...

【华三】路由器交换机忘记登入密码或super密码的重启操作

【华三】路由器交换机忘记登入密码或super密码的重启操作 背景步骤跳过认证设备:路由器重启设备翻译说明具体操作 跳过当前系统配置重启设备具体操作 背景 当console口的密码忘记,或者说本地用户的密码忘记,其实这时候是登入不了路由器的&am…...

Linux驱动开发进阶 - 文件系统

文章目录 1、前言2、学习目标3、VFS虚拟文件系统3.1、超级块(Super Block)3.2、dentry3.3、inode3.4、file 4、文件系统的挂载5、文件系统的注册5.1、文件系统的注册过程5.1.2、定义文件系统类型5.1.3、注册文件系统5.1.4、注销文件系统 5.2、文件系统的…...

Mac:JMeter 下载+安装+环境配置(图文详细讲解)

📌 下载JMeter 下载地址:https://jmeter.apache.org/download_jmeter.cgi 📌 无需安装 Apache官网下载 JMeter 压缩包,无需安装,下载解压后放到自己指定目录下即可。 按我自己的习惯,我会在用户 jane 目…...

蓝桥杯备考:图论之Prim算法

嗯。通过我们前面的学习,我们知道了,一个具有n个顶点的连通图,它的生成树包括n-1个边,如果边多一条就会变成图,少一条就不连通了 接下来我们来学一下把图变成生成树的一个算法 Prim算法,我们从任意一个结…...

Linux 文件操作-标准IO函数3- fread读取、fwrite写入、 fprintf向文件写入格式化数据、fscanf逐行读取格式化数据的验证

目录 1. fread 从文件中读取数据 1.1 读取次数 每次读取字节数 < 原内容字节数 1.2 读取次数 每次读取字节数 > 原内容字节数 2.fwrite 向文件中写入数据 2.1写入字符串验证 2.2写入结构体验证 3. fprintf 将数据写入到指定文件 4. fscanf 从文件中逐行读取内容…...

汽车一键启动系统使用方便,舒适出行,轻松匹配

汽车一键启动系统 系统定义 移动管家汽车一键启动系统是装置在智能汽车上的一部分&#xff0c;是实现简约打火和熄火过程的一个按钮装置。它可以在原车钥匙锁头的位置改装&#xff0c;也能独立面板改装&#xff0c;现在很多高低配置的车辆都可安装。 功能特点 基本功能 启…...

python函数的多种参数使用形式

目录 1. 位置参数&#xff08;Positional Arguments&#xff09; 2. 关键字参数&#xff08;Keyword Arguments&#xff09; 3. 默认参数&#xff08;Default Arguments&#xff09; 4. 可变参数&#xff08;Variable Positional Arguments&#xff09; 5. 关键字可变参数&…...

Qt带参数的信号和槽,以及信号与槽的连接方式

1.带参数的信号和槽 Qt的信号与槽也支持带有参数&#xff0c;同时也可以支持重载 此处我们要求&#xff0c;信号函数的参数列表要和对应连接的槽函数参数列表一致 此时信号触发&#xff0c;调用到槽函数的时候&#xff0c;信号函数中的实参就能够被传递到槽函数的形参中 示例…...

深度解析ECharts.js:构建现代化数据可视化的利器

引言&#xff1a;数据可视化的新时代挑战 在数字化转型浪潮中&#xff0c;数据可视化已成为企业决策和用户体验的关键环节。面对海量数据的呈现需求&#xff0c;传统表格已无法满足用户对直观洞察的渴求。作为百度开源的JavaScript可视化库&#xff0c;ECharts.js凭借其强大的…...

Flutter:页面滚动,导航栏背景颜色过渡动画

记录&#xff1a;导航默认透明&#xff0c;页面发生滚动后&#xff0c;导航背景色由0-1&#xff0c;过渡到白色背景。 view import package:ducafe_ui_core/ducafe_ui_core.dart; import package:flutter/material.dart; import package:get/get.dart; import package:redo…...

一文了解ThreadLocal

什么是ThreadLocal&#xff1f; ThreadLocal是每个线程私有的&#xff0c;线程可以把自己的私有数据放到ThreadLocal里面&#xff0c;不用担心其他线程访问到自己ThreadLocal。 通过set()方法将值存入ThreadLocal或者修改值&#xff0c;get()方法取出值&#xff0c;remove()方…...

日常学习开发记录-input组件

实现 1.实现2.inline-table和table-cell实现2.1 表格布局的特性2.2 示例 3.clear清除事件未生效3.1 原因3.2 解决 4. 增加type为text和textarea4.1 rows,autosize的实现 5.拓展-composition事件 1.实现 <template><div class"my-input":class"{is-dis…...

【数据库系统原理】简答题

真题 2024-10 31.数据模型的三大要素是什么? 32.简述关系模型的参照完整性规则。 33.什么是视图?视图的作用是什么? 34.简述两个实体型之间联系的三种形式,并举例说明。 35.什么是数据库备份?MySQL使用什么语句实现备份与恢复数据库中表的数据? 2024-04 31.请解释数据…...

20250319在荣品的PRO-RK3566开发板的buildroot系统下使用集成的QT应用调试串口UART3

stty -F /dev/ttyS3 115200 -echo cat /dev/ttyS3 & echo serialdata > /dev/ttyS3 20250319在荣品的PRO-RK3566开发板的buildroot系统下使用集成的QT应用调试串口UART3 2025/3/19 14:17 缘起&#xff1a;在荣品的PRO-RK3566开发板的buildroot系统下&#xff0c;在命令…...

C#基于MVC模式实现TCP三次握手,附带简易日志管理模块

C#基于MVC模式实现TCP三次握手 1 Model1.1 ServerModel1.2 ClientModel1.3 配置参数模块1.4 日志管理模块1.4.1 数据结构1.4.1 日志管理工具类1.4.1 日志视图展示1.4.1.1 UcLogManage.cs1.4.1.2 UcLogManage.Designer.cs 2 视图&#xff08;View&#xff09;2.1 ViewServer2.1.…...

大语言模型的多垂类快速评估与 A/B 测试

简介 行业领先的模型构建企业携手澳鹏&#xff08;Appen&#xff09;开展了一项极具挑战性的项目。针对 3 至 6 个大型语言模型&#xff08;LLM&#xff09;&#xff0c;在广泛的通用领域及复杂专业领域&#xff08;如医疗保健、法律、金融、编程、数学和汽车行业等&#xff0…...

一个成功的Git分支模型

本作品原发布账号为【白鸽子中文网】&#xff0c;现转至当前账号【飞翔中文网】。 反思备录(2020/3/5) 这个模型构思于2010年&#xff0c;现已过去10余年&#xff0c;(2010年)那时正处于Git诞生后不久。在这10年间&#xff0c;git-flow(本文中提到的分支模型) 在许多软件队伍里…...

MySQL 在 CentOS 7 上安装的步骤指南

&#x1f3dd;️专栏&#xff1a;Mysql_猫咪-9527的博客-CSDN博客 &#x1f305;主页&#xff1a;猫咪-9527-CSDN博客 “欲穷千里目&#xff0c;更上一层楼。会当凌绝顶&#xff0c;一览众山小。” 目录 1. 卸载不需要的环境 2. 获取 MySQL YUM 仓库 3. 安装 MySQL 4. 启动…...

DeepSeek-R1深度解读

deepseek提出了一种通过强化学习&#xff08;RL&#xff09;激励大语言模型&#xff08;LLMs&#xff09;推理能力的方法&#xff0c;个人认为最让人兴奋的点是&#xff1a;通过RL发现了一个叫“Aha Moment”的现象&#xff0c;这个时刻发生在模型的中间版本中。在这个阶段&…...

吴恩达机器学习笔记复盘(六)梯度下降算法

简介 梯度下降&#xff08;Gradient Descent&#xff09;是一种常用的优化算法&#xff0c;广泛应用于机器学习、深度学习等领域&#xff0c;在这里是用于求J&#xff08;w,b&#xff09;局部最小值。 我自己觉得这样说有点过于抽象。换个直观点的说法就是&#xff0c;一个人…...

【环境配置】windows下vscode下无法激活conda环境、创建虚拟环境报错

前言 我的本地的系统&#xff0c;绝大部分是使用的ubuntu。去年下半年开始切换成windows&#xff0c;然后windows下使用vscode还需要注意一些小的配置。为了避免反复搜索&#xff0c;这里记录下。   当已经在 windows 下安装了anaconda、vscode&#xff0c;之后的使用有可能存…...

【Linux笔记】动态库与静态库的理解与加载

&#x1f525;个人主页&#x1f525;&#xff1a;孤寂大仙V &#x1f308;收录专栏&#x1f308;&#xff1a;Linux &#x1f339;往期回顾&#x1f339;&#xff1a;【Linux笔记】动态库与静态库的制作 &#x1f516;流水不争&#xff0c;争的是滔滔不 一、ELF文件二、ELF的形…...

ollama docker设置模型常驻显存

参考&#xff1a; https://github.com/ollama/ollama/issues/5272 https://deepseek.csdn.net/67cfd7c93b685529b708fdee.html 通过-e传入环境变量&#xff0c;ollama运行&#xff1a; docker run -d --gpusall -e OLLAMA_KEEP_ALIVE-1 -v ollama:/root/.ollama -p 11434:114…...

SAP-ABAP:SAP 主数据管理体系深度解析与学习路径介绍

Ⅰ. 主数据体系全景认知 1.1 主数据核心定位 #mermaid-svg-Lf3tZAfcROs5hlN4 {font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;fill:#333;}#mermaid-svg-Lf3tZAfcROs5hlN4 .error-icon{fill:#552222;}#mermaid-svg-Lf3tZAfcROs5hlN4 .error-t…...

Redis解决缓存击穿问题——两种方法

目录 引言 解决办法 互斥锁&#xff08;强一致&#xff0c;性能差&#xff09; 逻辑过期&#xff08;高可用&#xff0c;性能优&#xff09; 设计逻辑过期时间 引言 缓存击穿&#xff1a;给某一个key设置了过期时间&#xff0c;当key过期的时候&#xff0c;恰好这个时间点对…...

FGPA学习(二)实现LED流水灯

目录 一、6个LED灯实现流水灯 &#xff08;一&#xff09;实验逻辑 1、时钟和复位信号的处理 2、按键停止信号的处理 3、计数器的计数逻辑 4、LED 状态更新逻辑 &#xff08;二&#xff09;代码实现 &#xff08;三&#xff09;效果展示 二、vscode插件下载及其模块分…...

【蓝桥杯】每天一题,理解逻辑(4/90)【Leetcode 二进制求和】

题目描述 我们解析一下题目 我们可以理解到两个主要信息 给的是二进制的字符串返回他们的和 我们知道&#xff0c;十进制的加减法需要进位&#xff0c;例如&#xff1a;9716是因为91之后进了一位&#xff0c;二进制也是如此&#xff0c;只不过十进制是逢10进1&#xff0c;二…...

docker利用ollama +Open WebGUI在本地搭建部署一套Deepseek-r1模型

系统&#xff1a;没有限制&#xff0c;可以运行docker就行 磁盘空间&#xff1a;至少预留50GB; 内存&#xff1a;8GB docker版本&#xff1a;4.38.0 桌面版 下载ollama镜像 由于docker镜像地址&#xff0c;网络不太稳定&#xff0c;建议科学上网的一台服务器拉取ollama镜像&am…...

精准git动图拆解​

参考原文&#xff1a;精准git动图拆解​​ 该工具可精准识别并提取.git 动图的每一帧&#xff0c;无论是代码运行演示&#xff0c;还是项目流程展示的动图&#xff0c;都能完美处理。​ 快速格式转换​ 提取的动图帧会快速转换为 PNG 格式。PNG 无损压缩、支持透明背景&…...

让vscode远程开发也可以图形显示

目录 0. 摘要1. 保存查看2. jupyter内置inline渲染3. jupyter浏览器4. matplot修改后端5. SSH X11转发[※]6. 参考 0. 摘要 vscode登录远程服务器进行开发遇到图形显示需求时&#xff0c;该怎么处理&#xff1f;一般有几种方式&#xff1a; 保存下来查看jupyter内置的inline图…...

996引擎 - 红点系统

996引擎 - 红点系统 总结NPC 红点(TXT红点)Lua 红点1. Red_Point.lua2. UI_Ex.lua参考资料以下内容是在三端 lua 环境下测试的 总结 红点系统分几个部分组成。 M2中设置变量推送。 配置红点表。 Envir\Data\cfg_redpoint.xls 2.1. UI元素中找到ID填写 ids 列。 主界面挂载…...

Springboot List集合的校验方式

pom.xml 引入 <dependency><groupId>org.hibernate.validator</groupId><artifactId>hibernate-validator</artifactId><version>6.2.0.Final</version></dependency><dependency><groupId>org.springframework.b…...

基于图像识别的医学影像大数据诊断系统的设计与实现

标题:基于图像识别的医学影像大数据诊断系统的设计与实现 内容:1.摘要 随着医学影像技术的快速发展&#xff0c;医学影像数据量呈爆炸式增长&#xff0c;传统的人工诊断方式在处理海量数据时效率低下且容易出现误差。本研究的目的是设计并实现一个基于图像识别的医学影像大数据…...

黑马node.js教程(nodejs教程)——AJAX-Day01-04.案例_地区查询——查询某个省某个城市所有地区(代码示例)

文章目录 代码示例效果 代码示例 axiosTest.html <!DOCTYPE html> <!-- 文档类型声明&#xff0c;告诉浏览器这是一个HTML5文档 --> <html lang"en"> <!-- HTML根元素&#xff0c;设置文档语言为英语 --><head> <!-- 头部区域&am…...

PySide(PyQt),使用types.MethodType动态定义事件

以PySide(PyQt)的图片项为例&#xff0c;比如一个视窗的场景底图是一个QGraphicsPixmapItem&#xff0c;需要修改它的鼠标滚轮事件&#xff0c;以实现鼠标滚轮缩放显示的功能。为了达到这个目的&#xff0c;可以重新定义一个QGraphicsPixmapItem类&#xff0c;并重写它的wheelE…...

c语言基础编程入门练习题

[编程入门]成绩评定 题目描述 给出一百分制成绩&#xff0c;要求输出成绩等级‘A’、‘B’、‘C’、‘D’、‘E’。 90分以及90分以上为A&#xff0c;80-89分为B&#xff0c;70-79分为C&#xff0c;60-69分为D&#xff0c;60分以下为E。 输入格式 一个整数0&#xff0d;100…...

汽车安全确认等级-中国等保

1、概念解析 网络安全保证等级&#xff08;Cybersecurity Assurance Level&#xff09;通常指在不同标准或框架下&#xff0c;根据系统或数据的敏感性、重要性以及潜在风险划分的等级&#xff0c;用于指导组织采取相应的安全防护措施。以下是几个常见的网络安全保证等级体系及…...

Quartus + VScode 实现模块化流水灯

文章目录 一、通过VScode编写Verilog代码二、模块化编程三、代码示例 一、通过VScode编写Verilog代码 1、下载Vscode 2、下载相关插件 搜索Verilog就会弹出有如图所示的插件&#xff0c;下载并安装 3、创建Quartus项目 4、创建完成后点击Tools&#xff0c;选择Options 然后在…...

从两指到三指:Robotiq机器人自适应夹持器技术解析

工业自动化离不开高效工具的支持。Robotiq机器人工具凭借其模块化设计和智能化编程技术&#xff0c;提升了设备的灵活性和操作效率。Robotiq机器人工具精准的传感器和自适应夹持器技术&#xff0c;能够满足多样化的应用需求&#xff0c;为制造业、物流和科研等领域提供可靠的解…...

网络安全应急入门到实战

奇安信&#xff1a;95015网络安全应急响应分析报告&#xff08;2022-2024年&#xff09;官网可以下载 https://github.com/Bypass007/Emergency-Response-Notes 应急响应实战笔记 网络安全应急响应技术实战指南 .pdf 常见场景 第4章 勒索病毒网络安全应急响应 第5章 挖矿木…...

Flutter IconButton完全指南:高效使用与性能优化秘籍

目录 一、引言 二、IconButton 的基本用法 三、 进阶技巧 3.1 自定义形状与背景 3.2 带文本的 IconButton&#xff08;使用 Column 组合&#xff09; 3.3 自定义交互反馈 3.4 动态图标切换 3.5 组合式按钮&#xff08;图标 文字&#xff09; 四、高级应用 4.1 与主题…...

跨国生产制造企业:如何破解远距离数据传输难题?

在全球制造业数字化转型的背景下&#xff0c;跨国生产制造企业的文件传输需求正呈现指数级增长。无论是设计图纸、生产计划、质量控制数据&#xff0c;还是供应链协同信息&#xff0c;跨国文件传输已成为制造业高效运营的核心环节。 然而&#xff0c;制造业文件大数据传输具有文…...

大模型如何赋能安全防御?威胁检测与漏洞挖掘的“AI革命”

&#x1f680; 引言&#xff1a;大模型是“安全守护神”还是“双刃剑”&#xff1f; 当黑客用AI生成恶意代码&#xff0c;安全团队也能用大模型“魔法打败魔法”&#xff01; 划重点&#xff1a;大模型不仅是“生产力工具”&#xff0c;更是安全防御的“智能武器库”&#xff0…...

uniapp常用组件

写在前面 今天将uniapp中的组件都过了一遍&#xff0c;上手难度不大&#xff0c;但是还是遇到了一些问题&#xff1a; HBuilder实在是太难用&#xff0c;不管是插件生态还是设计之类的&#xff0c;总之就是用的哪哪不顺手虽然打开内置浏览器是挺方便的&#xff0c;但是不知道…...

Oracle OCP认证没落了吗?

Oracle OCP认证没落了吗? Oracle的OCP认证是数据库领域必考的一个认证&#xff0c;但随着国产化的发展&#xff0c;国内很多企业开发了自己的数据库产品&#xff0c;这种情况对很多人造成了错误的认识&#xff1a;OCP被淘汰了吗?不然&#xff0c;从行业需求、技术趋势、认证体…...

洛谷 P3986 斐波那契数列

P3986 斐波那契数列 题目描述 定义一个数列&#xff1a; f ( 0 ) a , f ( 1 ) b , f ( n ) f ( n − 1 ) f ( n − 2 ) f(0) a, f(1) b, f(n) f(n - 1) f(n - 2) f(0)a,f(1)b,f(n)f(n−1)f(n−2) 其中 a, b 均为正整数&#xff0c;n ≥ 2。 问有多少种 (a, b)&…...

使用fastapi部署stable diffusion模型

使用vscode运行stable diffusion模型&#xff0c;每次加载模型都需要10分钟&#xff0c;为算法及prompt调试带来了极大麻烦。使用jupyter解决自然是一个比较好的方案&#xff0c;但如果jupyter由于种种原因不能使用时&#xff0c;fastapi无疑成为了一个很好的选择。 参考github…...