自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(283)
  • 收藏
  • 关注

原创 基于C++实现红黑树数据结构:从原理到高性能实践

红黑树以其卓越的性能保证(O(log n)时间复杂度)成为高级数据结构的代表。本文将完整实现一个工业级红黑树,并分析其在真实场景中的应用。从C++ STL中的。从任一节点到其每个叶子的路径包含相同数量的黑节点。到Linux内核的进程调度,再到Java的。红色节点的子节点必须为黑(无连续红节点):将颜色位与父指针共用存储空间。:使用内存池减少动态分配开销。:热节点移动到连续内存区域。:支持磁盘存储的变种结构。:CUDA实现并行化操作。锁管理器的资源等待队列。内存中的临时索引结构。:实现读写锁优化版本。

2025-03-28 16:27:34 372

原创 云原生技术赋能企业数字化转型:实战案例与架构演进

在VUCA时代背景下,某金融科技企业面临系统扩展性差、运维成本高企的困境。通过采用云原生技术栈,6个月内实现资源利用率提升300%,故障恢复时间从小时级缩短至分钟级。本文将深度解析该企业技术演进路径。运维人员:精通Prometheus+Alertmanager。开发人员:掌握K8s Operator开发。应用解耦评估(使用Squad分组法)阶段3:AIOps建设(12+个月)阶段2:服务网格集成(6-9个月)阶段1:容器化改造(3-6个月)架构师:熟悉服务治理模式。

2025-03-28 16:20:51 532

原创 侯捷 C++ 课程学习笔记:现代 C++ 中的移动语义与完美转发深度解析

在侯捷老师的《C++11/14/17 新特性详解》课程中,移动语义(Move Semantics)被称作"C++近十年来最重要的革新"。传统C++中饱受诟病的深拷贝性能问题,在现代C++中通过移动语义得到了革命性的优化。不是无条件转发,而是根据原始类型选择保留左值/右值性"移动语义不是可选优化,而是现代C++的必备技能。在返回时发生不必要的深拷贝,造成性能浪费。直接"窃取"临时对象的资源(避免新分配)只是类型转换,真正的移动发生在构造函数。:依赖编译器的返回值优化(RVO)研究STL容器的移动优化实现。

2025-03-25 17:25:34 576

原创 侯捷 C++ 课程学习笔记:深入理解对象生命周期与 RAII 机制

C++ 作为一门高性能的系统级编程语言,其核心优势在于对资源的精细控制。“RAII 是 C++ 资源管理的基石,它利用对象的生命周期自动管理资源,避免手动释放的繁琐和错误。三个角度,分享我的学习心得,并通过实际代码案例展示如何避免常见的内存管理错误。对象离开作用域(如函数结束),析构函数会自动调用,避免文件句柄泄漏。:在对象创建时自动调用,用于初始化资源(如内存、文件句柄)。即使发生异常,锁也会正确释放,避免死锁。:在对象销毁时自动调用,用于释放资源。,RAII 机制更安全,减少人为疏忽。

2025-03-25 17:03:37 962

原创 从零开始构建一个简单的Web爬虫:Python实战教程

Web爬虫(Web Crawler)作为一种自动化工具,可以帮助我们从网页中提取有价值的信息。本文将带你从零开始,使用Python构建一个简单的Web爬虫,并通过实际案例演示其应用。通过本文的实战案例,我们学习了如何使用Python构建一个简单的Web爬虫,并抓取了豆瓣电影Top250的数据。希望这篇文章能帮助你掌握爬虫的基本原理,并激发你进一步探索的兴趣。Web爬虫是一种自动化程序,能够模拟人类浏览网页的行为,从网页中提取数据并存储下来。:监控竞争对手的网站变化,或跟踪特定信息的更新。

2025-03-18 15:48:32 1080

原创 如何通过Python实现自动化任务:从入门到实践

本文将以Python为例,带你从零开始学习如何实现自动化任务,并通过一个实际案例展示其强大功能。通过本文的案例,我们可以看到,Python在自动化任务中的应用非常广泛且高效。无论是简单的文件重命名,还是复杂的系统管理,Python都能提供强大的支持。希望这篇文章能激发你对自动化技术的兴趣,并帮助你迈出实践的第一步。:Python可以在Windows、Linux和macOS等多个操作系统上运行,编写的脚本具有很高的可移植性。接下来,我们将通过一个实际案例,演示如何使用Python实现文件管理的自动化。

2025-03-18 15:43:03 2113

原创 深入理解动态规划:从入门到精通

动态规划是一种通过将问题分解为子问题,并保存子问题的解,避免重复计算的算法设计方法。动态规划是一种强大的算法设计方法,适用于具有最优子结构和重叠子问题的问题。通过理解其原理、实现方法和优化技巧,我们可以更好地应用它解决实际问题。无论是背包问题、最长公共子序列还是最短路径问题,动态规划都发挥着重要作用。

2025-03-16 10:28:24 430

原创 图的最短路径算法:Dijkstra算法详解

Dijkstra算法是解决最短路径问题的经典方法,适用于无负权边的图。通过理解其原理、实现方法和优化技巧,我们可以更好地应用它解决实际问题。无论是路由算法、地图导航还是资源分配,Dijkstra算法都发挥着重要作用。

2025-03-16 10:21:29 956

原创 深入理解堆:原理、实现与应用

最大堆:每个节点的值大于或等于其子节点的值。最小堆:每个节点的值小于或等于其子节点的值。private:// 获取父节点索引// 获取左子节点索引// 获取右子节点索引// 上浮操作// 下沉操作if (i!public:// 插入元素// 删除堆顶元素throw std::out_of_range("堆为空");return max;// 获取堆顶元素throw std::out_of_range("堆为空");// 打印堆。

2025-03-16 10:15:25 911

原创 深入理解并查集:原理、实现与应用

查找(Find):确定某个元素所属的集合。合并(Union):将两个集合合并为一个集合。并查集是一种高效的数据结构,适用于处理不相交集合的合并与查询问题。通过路径压缩和按秩合并优化,其操作的时间复杂度接近常数级别。掌握并查集的原理和实现方法,可以帮助我们更好地解决实际问题。

2025-03-16 09:59:25 648

原创 深入理解哈希表:原理、实现与应用

哈希表是一种通过哈希函数将键映射到值的数据结构,支持高效的插入、删除和查找操作。// 未找到});哈希表是一种高效的数据结构,适用于需要快速查找和更新的场景。通过理解其原理和实现方法,我们可以更好地应用它解决实际问题。

2025-03-16 09:47:49 395

原创 深入理解二叉搜索树:原理、实现与应用

二叉搜索树是一种特殊的二叉树,满足以下性质:对于树中的每个节点,其左子树中的所有节点的值都小于该节点的值。对于树中的每个节点,其右子树中的所有节点的值都大于该节点的值。左右子树也分别是二叉搜索树。int val;二叉搜索树是一种高效且灵活的数据结构,适用于需要频繁查找、插入和删除的场景。通过理解其原理和实现方法,我们可以更好地应用它解决实际问题。同时,了解其局限性并掌握改进方法(如平衡二叉搜索树)也是非常重要的。

2025-03-16 09:29:47 796

原创 C或C++中实现数据结构课程中的链表、数组、树和图案例

【代码】C或C++中实现数据结构课程中的链表、数组、树和图案例。

2025-03-16 09:19:07 285

原创 C或C++中实现数据结构课程中的链表、数组、树和图

【代码】C或C++中实现数据结构课程中的链表、数组、树和图。

2025-03-16 09:12:03 211

原创 DeepSeek 图解

中间模型占据主要训练精力的阶段,实际上完全通过推理导向的强化学习。大规模推理导向的强化学习训练,必不可少的就是推理数据,手动标注就。加通用,这是因为它们基于大量多样化的数据集进行训练,涵盖了不同领域。因此,这类模型的应用范围较为局限,通常只。中间模型虽然推理能力很强,但存在可读性和多任务能力不足的问题,所以。习优化:基于帮助性和安全性奖励模型,优化推理与非推理任务表现,构建。我们基于单一数据集训练的模型通常具有较强的针对性,但其知识范围仅。模型之所以能基于大量多样化的数据集进行训练,并最终“学得好”,核。

2025-03-12 15:03:44 888

原创 利⽤ DeepSeek-R1 构建本地知识库

我们通过搭建本地模型,配合 Embedder 和向量数据库,可以直接构建一个隐私性更好,实时性更高的个人知识库 DAG。工作中除了需要知识库,更需要 BPA,即业务自动化,利用 LLM 模型来提高自动化水平,这种系统更实用,下一步的目标是逐步构建 BPA 系统,希望大家能持续关注。

2025-03-12 14:50:36 1020

原创 通过 API 调用 DeepSeek

现在就可以直接使用了,需要注意的是,目前的使用。在余额充值界面可以看到当前账户的余额并进行充值。行安装,安装过程直接点击下一步,安装即可。即可,然后点击右下角紫色的新建密钥按钮。首先我们打开以下网址进行登陆注册。完成后你会看到你创建的新的密钥。密钥之后会弹出如下窗口,填上。不会显示模型的思考过程。我们点击左侧侧边栏中的。我们双击打开压缩包中的。才是有深度思考能力的。密钥,切换到如下界面。

2025-03-11 14:07:03 194

原创 DeepSeek V3 搭建个人知识库教程

返回首页,在左上角点击新工作区,建立一个自己的工作区,输入工作区名称。看到出现以下提示,表示文档导入完成,系统正在对文档进行解析。官网,选择对应的系统下载,下载完成后直接安装即可。至此,所有准备工作已经完成,返回页面,点击【推理模型,思维比较缜密,思考时间长,效。点击导入文档,进入文档管理界面,拖拽文档。选择已经导入的文档,点击导入工作区并保存。导入成功的文档可以在右侧窗口看到。注册自己的账号,新注册的账号会。,创建一个新的密钥,并复制。模型,响应快,价格相对便宜。,登录或者注册一个新账号。

2025-03-11 14:00:45 720

原创 LED 呼吸灯(PWM 控制) 和 串口通信

使 PWM 频率为 1 kHz(例如 Prescaler=71,Counter Period=1000)。确保 PWM 频率与 LED 响应速度匹配(通常 100Hz~1kHz)。实现多任务控制(如 PWM、串口、ADC 并行运行)。选择开发环境(如 Keil MDK),生成初始化代码。(连接至 PWM 输出引脚,如 PA0)(如光敏电阻),自动调节 LED 亮度。使用示波器验证 PWM 波形(可选)。(如 STM32F103C8T6)。通道 1(对应 PA0),配置为。(如 RGB LED 调色)。

2025-03-11 13:55:38 589

原创 如何零成本云端部署deepseek模型

前提条件这两天来⾃外⽹的攻击,让deepseek经常出现这种情况,所以我们想体验这个模型,电脑硬件还跟不上,怎么办,可以⽩嫖腾讯云的GPU,将模型实现云端部署。前提条件•拥有⼀个腾讯云账号并完成实名认证。•确保你的腾讯云账号有⾜够的余额来⽀付可能产⽣的费⽤。•安装并配置好 Ollama 环境。详细步骤1.注册并登录腾讯云账号2.打开腾讯云官⽹:。3.点击右上⻆的“注册”按钮,按照提⽰完成注册和实名认证。4.注册完成后,使⽤你的账号登录腾讯云。5.

2025-03-11 13:52:23 1086

原创 Python 机器学习小项目:手写数字识别(MNIST 数据集)

其中包含 0-9 的手写数字图像,每张图片是 8×8 像素的灰度图。支持向量机(SVM)是一个强大的分类算法,特别适合中小型数据集。加载 MNIST 数据集的一个小型版本(8×8 图像)。我们从测试集中随机选取一些样本进行预测,并显示结果。模型来构建一个手写数字识别系统。(64 个特征),以便输入到 SVM 模型中。(转换 8×8 图像为 64 维特征)我们需要将 8×8 的图像转换为。通过本项目,我们完成了一个完整的。我们在测试集上评估模型的准确率。

2025-03-10 17:13:48 446

原创 基于 SVM(支持向量机)的手写数字识别

SVM(支持向量机)是一个非常强大的分类算法,在手写数字识别任务中表现优秀。我们从测试集中选择 10 张手写数字,进行预测并可视化。✅ 数据预处理(转换 8x8 图片到 64 维特征向量)数据集,它包含 0-9 的手写数字,每张图片是。: ✅ 加载 MNIST 数据集。的特征向量),以便进行训练。通过这个项目,我们完成了一个。计算模型在测试集上的准确率。✅ 训练 SVM 分类器。✅ 预测并可视化结果。

2025-03-10 17:09:37 422

原创 Python 实现机器学习的 房价预测回归项目

基于房屋特征(如房间数、地理位置等)预测加州地区的房价中位数。(使用 California Housing 数据集)部署为API服务(使用Flask/FastAPI)使用 Python 实现机器学习的。:误差大致呈正态分布,但存在高价房低估现象。:线性回归表现优于决策树(R²分数更高)尝试其他回归模型(随机森林、梯度提升树)添加特征交互项(如收入×房间数)(收入中位数)与房价正相关最强。将经纬度转换为地理位置聚类特征。)在决策树中显示较高重要性。使用网格搜索优化超参数。

2025-03-10 17:04:49 609

原创 鸢尾花分类(使用经典的 Iris 数据集)

使用 Scikit-learn 库构建一个分类模型,根据鸢尾花的花萼和花瓣特征预测其品种(setosa, versicolor, virginica): 除了准确率,关注 precision/recall 等更细致的指标。: 逻辑回归适合多分类问题,也可尝试 SVM、决策树等其他算法。部署模型为简单 Web 应用(使用 Flask)确保数据分布一致(stratify=y)进行特征工程(如特征缩放、PCA降维): 帮助理解数据分布和模型表现‘’使用交叉验证优化模型参数。

2025-03-10 17:01:43 183

原创 负载均衡集群和高可用集群

一、集群1、 集群概述1.1、 什么是集群? 集群称呼来自于英文单词cluster,表示一群、一串的意思,用在服务器领域则表示大量服务器的集合体,协同起来向用户提供系统资源,系统服务。通过网络连接组合成一个计算机组,来共同完一个任务。 根据实际企业环境的不同,集群所提供的功能也各不相同,采用的技术细节也可能各有千秋,但无论哪种集群,都至少包括两台节点服务器。而对外表现为一个整体,只提供一个访问入口(域名或IP地址),为用户提供服务,组成集群的服务器称之为集群的节点。1.2、 集群

2025-03-09 12:06:27 1024

原创 http协议分析

基于一个前提:图片不会经常改动,服务器在返回状态码200的同时,还会返回该图片的签名Etag,(可以理解为图片的指纹),当浏览器再次访问该图片时,就会去服务器校验指纹信息,如果图片没有变化,直接使用缓存里的图片,这样减轻了服务器的负担,一看到304,浏览器就知道了,要从本地缓存里面取图片,节省了图片在网络上传输的时间。服务器类的错误信息。,通过网站的动态编程语言编写的程序,需要编译,然后再以html格式的格式输出给用户,动态语言有:php,jsp(java),asp,.net html+jsp。

2025-03-05 14:14:38 681

原创 消息系统队列(Message Queue)之kafka

在kafka中,zookeeper负责的是存储kafka中的元数据信息,队列的数据是不会存储到zookeeper的,kafka是分布式的,zookeeper协调broker、producer、consumer之间的关系,当有新的角色加入的时候,更新zookeeper中的数据,其他角色就可以得到通知,并作出相应的调整,不需要停机更新配置,做到动态扩容。按照官网的参数说明,advertised.listeners默认值等于listeners参数的值,并被发布到zooleeper中,供客户端访问使用。

2025-03-05 14:02:09 944

原创 分布式开源协调服务之zookeeper

下面的节点都是临时节点,服务器启动的时候会过来注册一个临时节点,服务器挂掉之后或主动关闭之后,临时节点会自动移除,这样就可以保证使用者获取的what服务都是可用的,而且可以动态的扩容缩容。Zookeeper就是负责这些工作的一个管理平台。解决:把这些配置全部放到ZooKeeper上,保存在ZooKeeper的某个目录节点中,然后所有的应用程序(客户端)对这个目录节点进行监视Watch,一旦配置信息发生变化,ZooKeeper会通知每个客户端,然后从ZooKeeper获取新的配置信息,并应用到系统中。

2025-02-28 14:29:23 740

原创 Redis拓展

缓存雪崩是指在某个时间段内,缓存中的大量数据同时过期或者失效,导致大量请求直接打到数据库上,造成数据库压力过大,这种情况下,可以通过设置不同的过期时间,使用分布式锁或者热点数据预加载来解决。如果从缓存没有查询到数据,则进行互斥锁的获取,获取互斥锁后,判断是否获得到了锁,如果没有得到,则休眠,过一会再进行尝试,直到获取到锁为止,才能进行查询。如果获取到了锁的线程,再去进行查询,查询后将数据写入 redis,再释放锁,返回数据,利用互斥锁就能保证只有一个线程去执行操作数据库的逻辑,防止缓存击穿。

2025-02-27 16:04:20 939

原创 Redis-cluster集群

在redis3.0以前的版本要实现集群一般是借助哨兵sentinel工具来监控master节点的状态,如果master节点异常,则会做主从切换,将某一台slave作为master,哨兵的配置略微复杂,并且性能和高可用性等各方面表现一般,特别是在主从切换的瞬间存在访问瞬断的情况,而且哨兵模式只有一个主节点对外提供服务,没法支持很高的并发,且单个主节点内存也不宜设置得过大,否则会导致持久化文件过大,影响数据恢复或主从同步的效率。三个主节点会分配槽,处理客户端的命令请求,而从节点可用在主节点故障后,顶替主节点。

2025-02-27 15:55:13 917

原创 Redis主从架构+使用sentinel实现主从架构高可用

为了防止sentinel误判和单点故障,sentinel也应该部署为集群,sentinel多个节点同时监控redis主从架构,一旦有一个sentinel节点发现redis的主节点不在线时的情况,sentinel会与其他的sentinel节点协商,看其他的sentinel节点是否也同样发现redis的主节点不在线,如果sentinel的多个点节点都发现redis的主节点都为离线,那么则判定redis主节点为离线状态,以此方式避免误判,同样也避免了单点故障。也可以在3台不同的服务器上进行搭建redis。

2025-02-27 15:28:14 1064

原创 Redis持久化

AOF类似于MySQL的二进制日志,记录每一次redis的写操作命令,以顺序IO方式附加在指定文件的尾部,是使用追加方式实现的,这也叫做一种附加日志类型的持久化机制,由于每一次的操作都记录,则会随着时间长而增大文件的容量,AOF不像RDB,RDB是保存数据集的本身。因为redis的主线程是用于处理请求的,所以此时会阻塞所有客户端请求,每次的保存快照都是把内存中的数据完整的保存一份,并非是增量的,如果内存中的数据比较大,而还有大量的写操作请求时,此方式会引起大量的I/O,会导致redis性能下降。

2025-02-27 15:18:54 588

原创 Redis常规命令

创建一个新的列表,在帮助中并没产明哪个命令用于创建一个新的列表,实际上创建一个新的列表使用LPUSH或RPUSH都可以。在同一个库中(名称空间),键的名称不得重复,如果复制键的名称,实际上是修改键中的值 ##一个库就是一个名称空间。键指向一个列表,而列表可以理解为是一个字符串的容器,列表是由众多元素组成的集合,可以在键所指向的列表中附加一个值。192.168.1.11:6379> lpush ll fda #在原有的列表中的左侧加入一个值。key 过期后将不再可用。

2025-02-26 15:00:04 1048

原创 Redis

这样对于客户端而言,一切都是透明的。Redis和Memcache类似,但很大程度补偿了Memcache的不足,Redis数据都是缓存在计算机内存中,不同的是,Memcache只能将数据缓存到内存中,无法自动定期写入硬盘,这就表示,一断电或重启,内存清空,数据丢失。当用Redis做Master-slave的高可用方案时,假如master宕机了,Redis本身(包括它的很多客户端)没有实现自动进行主备切换,需要手动把一台从服务器切换为主服务器,这就需要人工干预,费事费力,还会造成一段时间内服务不可用。

2025-02-26 14:53:33 972

原创 MySQL主从架构

MySQL主从复制默认是异步的模式,异步模式如下图所示,这种模式下,master事务的提交不需要经过slave的确认,slave是否接收到master的binlog,master并不关心。简单的说就是master将数据库的更新操作写入二进制日志,slave同步这些二进制日志中的数据更新事件并写入中继日志文件中,然后读取relay日志,把二进制的日志解析成SQL语句,并执行这些SQL语句,使其与master中的数据一致。`命令之后,从节点会创建一个I/O线程用来连接主节点,请求主库中更新的bin-log。

2025-02-21 17:08:12 1429

原创 MySQL优化

首先是任何存储引擎都不可缺少的存放表结构定义信息的.frm文件,另外还有.MYD和.MYI 文件,分别存放了表的数据(.MYD)和索引数据(.MYI)。死锁的本质是一种僵持状态,之所以出现死锁,是因为多个线程对资源的强占,你要我的,我也要你的,两人堵在路上谁都不让,所以死锁了。在复合索引中,索引列的顺序非常重要,,如果不是按照索引列最左列开始进行查找,则无法使用该索引。l数据库在读写过程中相互堵塞,在数据写入的过程中阻塞用户对数据的读取,在数据读取的过程中阻塞用户写入数据。快:全表扫描更快的意思。

2025-02-21 16:47:46 910

原创 MySQL日常维护工具------备份

不过偶尔也有超出该设置的binlog 产生,一般都是因为在即将达到上限时,产生了一个较大的事务,为了保证事务安全,MySQL 不会将同一个事务分开记录到两个binlog 中。1、基于时间点的恢复,就是将某个起始时间的二进制日志导入数据库中,从而跳过某个发生错误的时间点实现数据的恢复,使用MySQLbinlog加上--stop-datetime选项,表示从二进制日志中读取指定时间之前的日志事件,后面误操作的语句不执行,--start-datetime选项表示从二进制日志中读取指定时间之后的日志事件。

2025-02-19 16:34:08 1059

原创 Mysql-------事务

很多时候一个事物会包含多条语句,而出现问题需要回滚时,并不一定是要回滚到begin之前的状态,有可能是某条语句执行后的状态,这时要使用savepoint定义回滚点,rollback决定回滚到的位置。即一个事务内部的操作及使用的数据对并发的其他事务是隔离的,并发执行的各个事务之间不能互相干扰,这些通过锁来实现。原子性(Autmic):事务必须是原子工作单元,不能被分隔的,事务中的操作要么全部执行,要么全都不执行,不能只完成部分操作。通过将一组操作组成一个操作单元,执行时,要么全部成功,要么全部失败的单元。

2025-02-19 16:00:02 486

原创 MySQL索引

如果表A的主键字段是表B中的字段,则该字段称为表B的外键,表A称为主表,表B称为从表。索引是一种特殊的文件(InnoDB数据表上的索引是表空间的一个组成部分),它们包含着对数据表里所有记录的引用指针。注:如果Key是MUL, 就是一般性索引,该列的值可以重复, 该列是一个非唯一索引的前导列(第一列)或者是一个唯一性索引的组成部分但是可以含有空值NULL。索引的维护成本较高。foreign key就是表与表之间的某种约定的关系,由于这种关系的存在,我们能够让表与表之间的数据,更加的完整,关连性更强。

2025-02-19 15:44:41 286

原创 Mysql基础语句

MySQL> create table stu_info(id int comment '学号', name varchar(20) comment '姓名', age tinyint comment '年龄', ', sex enum('男','女') comment '性别', phone_number char(11) comment '电话号码', address varchar(255) comment '住址') engine=innodb default charset=utf8;

2025-02-19 15:22:20 1183

HEU-KMS-Activator-v42.3.0

HEU_KMS_Activator_v42.3.0

2025-02-20

CherryTree-CherryTree

CherryTree

2025-02-20

kangaroo-multiple-6.0.1.241012-x86-64

kangaroo-multiple-6.0.1.241012-x86_64

2025-02-20

Cisco Packet Tracer 6.2sv

Cisco Packet Tracer 6.2sv

2025-02-20

ansiblerepo

ansiblerepo

2025-02-20

网络协议抓包嗅探分析软件

网络协议抓包嗅探分析软件

2025-02-20

vnc-server(vnc)

vnc-server(vnc)

2025-02-20

windowsdesktop-runtime-6.0.35-win-x64

windowsdesktop-runtime-6.0.35-win-x64

2025-02-20

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除