记一次 .NET 某智能视觉软件 句柄爆高分析
一:背景 1. 讲故事 前几天高级调试训练营里的一位学员找到我,说他们的程序句柄爆高,经过自己分析之后发现是几百万的 process 句柄,截图如下: 说实话,第一眼看到有这么多的 process 句柄还是挺震惊的,在我的400+dump分析之旅中还是从未见过,这也给了我很大的好奇心,接下来我们就来 ...
【C++】神秘-希尔排序
目录插入排序希尔排序希尔排序的优点时间复杂度希尔排序的思想预排序Knuth增量序列代码实现希尔排序 插入排序 在待排序的元素中,假设前k个元素已有序,现将第k+1个元素插入到前面已经排好的序列中,使得前k个元素有序。 按照此法对所有元素进行插入,直到整个序列有序。 但我们并不能确定待排元素中究竟哪一 ...
a+b=c,处理器一步搞定,Java虚拟机为啥要四步?
基于栈的运行方式 Java虚拟机的执行过程基于字节码指令,可以将其视为对操作系统的一种抽象模拟。Java虚拟机具有自己的指令集和运行环境,包括堆(Heap)、栈(Stack)、方法区(Method Area)等。因此,Java虚拟机的指令操作流程与处理器的指令操作流程有许多相似之处,主要包括取指令、 ...
重剑无锋--从零开始建设k8s监控之总结(八)
前言 在前文中,prometheus基本的用法都简单的描述一遍,最后本文来讨论一下prometheus高可用的问题 环境准备 组件 版本 操作系统 Ubuntu 22.04.4 LTS docker 24.0.7 thanos 0.36.1 1. 双prometheus架构 2个prometheus ...
独立开发:这才过去一个月?
职场是见兔子再撒鹰,独立开发是先撒鹰再找兔子。过去一个月,迷茫的状态屈指可数,因为每天都处在各种事情的包围圈中,任务一茬一茬的排在待办清单中。 ...
vue3中的watch详细讲解保证看的明明白白
Vue3 中的 watch 只能监视以下四种数据 1,ref 定义的数据。 2,一个响应式对象(如:reactive 定义的数据)。 3,函数的返回一个值(getter函数)。getter函数其实就是:能返回一个值的函数 4,由以上类型的值组成的数组 地址:https://cn.vuejs.org/ ...
AI 时代,为什么我们还有必要写博客?
在这个 AI 技术日新月异、飞速发展的时代,一个问题或许萦绕在许多内容创作者心头:写博客还有意义吗? 毕竟,AI 已经能够生成内容、解答疑问,甚至在一定程度上模拟人类的思维方式。我们花费数小时甚至数天精心撰写的文章,AI 可能在几秒钟内就能生成一篇看起来差不多的。很多人会说,写博客是为了记录和分享, ...
敏捷测试如何应用 BDD(行为驱动开发)?
BDD作为敏捷测试的重要实践手段,完美契合敏捷快速迭代、持续交付的理念,通过业务驱动的行为描述促进团队沟通、推动自动化测试和质量保障。尽管实施过程中存在挑战,但通过科学方法、合适工具及AI赋能,BDD能极大提升敏捷团队的测试效率和交付质量。 ...
多Agent协作入门:移交编排模式
在移交(也可以叫做交接)编排模式中,允许各个Agent根据上下文或用户请求相互转移控制权,每个Agent都可以通过适当的专业知识将对话“移交”给另一个Agent,确保每个Agent处理任务的某个指定部分。这种模式非常适合于客户支持(客服)、专家系统或需要动态委派类型的任务场景。 ...
PG系列:Select查询一样会被阻塞
我们的文章会在微信公众号IT民工的龙马人生和博客网站( www.htz.pw )同步更新 ,欢迎关注收藏,也欢迎大家转载,但是请在文章开始地方标注文章出处,谢谢! 由于博客中有大量代码,通过页面浏览效果更佳。 在之前的理解中SELECT语句只会在对象上获取共享锁,在行上面由于MVCC机制不会申请任何 ...
Bcrypt 简介与加密和验证示例【加密知多少系列_8】
〇、简介 Bcrypt 是一种基于 Blowfish 加密算法的单向哈希函数,专为密码存储设计。它通过随机盐值(salt)和可调节的工作因子(cost factor)实现高安全性,是目前主流的密码哈希算法之一。 核心原理: 随机盐值(Salt):每次加密时生成一个随机盐值(16 字节),与密码混合后 ...
[浅谈数据结构] 浅谈树状数组
1.作用 树状数组是一种高效而简单的数据结构,用于*大部分区间修改和查询问题,形如\(a[1]+a[2]+a[3]+a[4]+...+a[n]\)(其不支持的可以由线段树替代) 2.选择原因 优点:树状数组的码量明显比线段树短,时间复杂度比朴素算法与线段树更优,空间复杂度则吊打线段树 缺点:部分线段 ...
HTTP请求头中表示代理IP地址的属性及获取情况
本文介绍了代理服务器的四种类型(透明代理、普通匿名代理、欺骗性代理、高匿名代理)以及请求头中表示代理 IP 地址的属性,详细解释了各种情况下获取 IP 地址的情况。 ...
独立开发在线客服系统,我是如何与杀毒软件误报斗智斗勇的
我在业余时间开发了一款自己的独立产品:升讯威在线客服与营销系统。陆陆续续开发了几年,从一开始的偶有用户尝试,到如今线上环境和私有化部署均有了越来越多的稳定用户,在这个过程中,我也积累了不少如何开发运营一款独立产品的经验。在这期间,一直有一个问题困扰着我,就是客服端软件经常被各种杀毒软件,包括 Win... ...
通过AssemblyLoadContext 卸载清空Roslyn动态编译缓存数据
一、前言 前段时间更新发布了dotnetty,内存泄漏问题得到了修复,而后分析dump发现,还有Roslyn动态编译缓存数据没有得到回收,通过统计有5mb左右,这个占比可是整个项目的1/10, 然后通过分析是静态缓存数据,没有扩展方法可以清理,所以求助了Roslyn 社区,他们也非常热心,有一个中国 ...
RFX2401C 2.4G射频放大电路
RFX2401C 是一个2.4 GHz频段射频放大芯片, 尺寸只有3mm\*3mm, qfn16封装, 单芯片集成PA和LNA, 外围电路简单, 在带功率放大的nrf24l01模块以及航模遥控器上经常见到. 发射端单边增加 RFX2401C 作为 PA 后, 通信距离增加到约300m, 稳定通信距离... ...
有限Abel群的结构(3)
版权申明:本文为博主窗户(Colin Cai)原创,欢迎转帖。如要转贴,必须注明原文网址 https://www.cnblogs.com/Colin-Cai/p/18931900.html 作者:窗户 QQ/微信:6679072 E-mail:6679072@qq.com 本节在上一节的结论基础上, ...
VTK开发笔记(一):VTK介绍,Qt5.9.3+VS2017x64+VTK8.2编译
前言 主流开源三维三大流派:openGL、osg和vtk,各有优劣,所以根据项目和产品定义的不同,选择合适的方式,本系列开启VTK三维系列教程。 这里注意我们走的是C++技术流,对内存、性能和交互实时性是我们承担研制开发项目和产品所追求的。 版本区分 根据网上搜索的,整理一下: Qt5.9.2 + ...
Django模型迁移指南:从命令用法到最佳实践
Django迁移系统是数据库版本控制工具,通过生成迁移文件、应用迁移和回滚操作,实现模型与数据库结构的同步。支持迁移生成、应用、冲突解决及遗留数据库集成,确保开发过程中的数据模型一致性与灵活性。 ...