Python添加windows资源管理器上下文菜单 无条目限制
目前开发一个项目x1ntt/pychee6需要在资源管理器的上下文菜单中插入命令,于是调查了一下python能用的库。 目前来说,最好用的库是Context_ment ,接口设计简单,使用方便,同时还兼容Linux系统;再者就是通过使用COM的方式让资源管理器主动调用Python脚本。这种方案条目限 ...
上周热点回顾(6.23-6.29)
热点随笔: · 博客园众包平台:诚征3D影像景深延拓实时处理方案(预算8-15万) (博客园团队)· 为什么说方法的参数最好不要超过4个? (叫我安不理)· C#.Net筑基-优雅LINQ的查询艺术 (安木夕)· Cursor生成UI,加一步封神 (BNTang)· STM32学会要花费多长时间?一 ...
从 TCP 到 WebSocket:一次搞懂网络通信的三层演进
本文旨在从开发者的视角,深入剖析这三者之间的技术关联与演进逻辑。我们将逐层递进,从底层的传输协议到上层的应用规范,清晰地揭示它们各自的职责、设计哲学以及在不同场景下的技术选型考量。 ...
Web前端入门第 73 问:JavaScript DOM 常用事件那点小事
网页上各种炫酷的交互效果离不开各种 DOM 事件 的支持,在写这篇文章之前,一度以为 JS 的事件绑定/取消方式就我知道的那几种,翻阅文档之后才发现,知识面还是有待提升,多翻翻文档,就像发现新大陆一样~~ 常用事件 鼠标事件: click:鼠标左键单击 dblclick:鼠标左键双击 mousedo ...
【译】Agent 模式现已全面推出并支持 MCP
Copilot Agent 模式是 AI 辅助开发的又一次革新,如今已在 Visual Studio 六月更新版中全面推出。 Agent 模式将 GitHub Copilot 转变为一个能够自主完成多步骤开发任务的结对编程助手。它可以制定计划、执行计划、在过程中进行调整,并循环处理任务直至完成。 A ...
Java集合--HashMap底层原理可视化,秒懂扩容、链化、树化
HashMap做一个全面梳理,涵盖:冲突处理(链地址法)、扩容流程、链表–红黑树(树化/链化)转换的处理。通过四次扩容,渐进式的对 HashMap 扩容及相关操作有一个基本而完整的理解。 ...
从零开发Vim-like编辑器(02)探讨编辑器对文本的解析与呈现设计思路
本文同步发布在我的个人博客:https://zhen.wang 前言 前一篇文章作为开篇,只是介绍了Ratatui的相关使用,引出了一些概念。从本文开始,我们正式进入咱们的Vim-like编辑器的开发设计。 Vim-like编辑器,或者说任意类型的文本编辑器,其核心功能无外乎两个: 呈现当前文本内容 ...
你了解 Java 的类加载器吗?类加载机制是什么?什么是双亲委派机制?
什么是类加载器,类加载器有哪些? 实现通过类的全限定名获取该类的二进制字节流的代码块叫做类加载器。 主要有一下四种类加载器: 启动类加载器:用来加载 Java 核心类库,无法被 Java 程序直接引用。 扩展类加载器:它用来加载 Java 的扩展库。Java 虚拟机的实现会提供一个扩展库目录。该类加 ...
C#.Net筑基-泛型T & 协变逆变
泛型(Generics)是C#中的一种强大的强类型扩展机制,在申明时用“占位符”类型参数“T”定义一个“模板类型”,比较类似于C++中的模板。泛型在使用时指定具体的T类型,从而方便的封装、复用代码,提高类型的安全性,减少类型转换和装箱。 ...
DotTrace系列:8. 时间诊断之 异步代码 和 Task任务
一:背景 1. 讲故事 现如今的很多代码都是awaitasync+Task的方式,对它们进行性能洞察非常有必要,awaitasync 本质上就是将状态机塞入到 Task 的 m_continuationObject 延续字段上,和 ContinueWith 没有本质区别,这一篇我们就来聊一聊。 二: ...
【EF Core】DbContext是如何识别出实体集合的
在开始之前说明一下,你不要指望阅读完本文后会得到光,就算得到光你也未必能变成迪迦。本文老周仅介绍原理,可以给部分大伙伴们解惑。 咱们都知道,在派生 DbContext 类时,集体类的集合用 DbSet<TEntity> 表示,而咱们最常用的方法是在 DbContext 的派生类中公开 DbSet<T ...
一文搞懂javascript中的var、let、const
简介 var, let and const是JavaScript中三种定义变量的方式,它们之间有什么区别呢?这是前端面试中常见的一道题,今天我们来一文说透它。 let和const区别不大,主要是const声明的是常量,不可修改,而let声明的变量是可修改的。所以我们重点放在var和let上。 变量初 ...
以接口肢解bean factory,源码没那么神秘
本来昨天在看 spring frame的八股, 看到了IOC部分,但是实在看不懂是什么东西,讲是讲源码部分,但又不完全讲,我想着那我要不自己看一下源码 这是我画的Bean Factory的大致关系图 删去了bean别名管理接口(AliasRegistry)和bean定义接口(BeanDefiniti ...
Spring Boot 集成 tess4j 实现图片识别文本
前言 Tesseract 是世界上最知名、应用最广泛的开源 OCR 引擎。它由 Google 积极维护,功能强大,支持多种语言和平台。虽然它在处理理想条件下的印刷文本时表现出色,但其精度会受到图像质量和复杂性的影响。它通常作为核心引擎被集成到各种应用程序、脚本和更大型的系统中,是许多需要文本提取功能 ...
ceph mgr balancer模块执行流程与配置方案
随着OSD的更替和集群的扩缩容,PG在OSD的分布会逐渐变的不均衡,导致各OSD的实际容量使用率出现差异,集群整体使用率降低。ceph balancer模块就是通过调整权重或者upmap指定pg映射来让pg分布均匀的模块,分为upmap模式和crush-compat模式,本文基于Pacific版本, ...
32岁入行STM32迟吗?
作为一个在嵌入式领域摸爬滚打了近10年的老兵,看到这个问题时心情五味杂陈。32岁入行STM32迟吗?说实话,如果你问我这个问题的时候我还是24岁的小白,我可能会觉得"哇,32岁才开始学单片机,是不是有点晚了?"但现在30岁的我,经历了从机械专业跨界到嵌入式、从打工到创业的全过程后,我想说:兄弟,32 ...
一次 .NET 性能优化之旅:将 GC 压力降低 99%
字数 1128,阅读大约需 6 分钟 一次 .NET 性能优化之旅:将 GC 压力降低 99% 前言:问题的浮现 最近,我使用 ScottPlot 库开发一个频谱分析应用。应用的核心功能之一是实时显示频谱图,这可以看作是一个高频刷新热力图(Heatmap)。然而,在程序运行一段时间后,我注意到整体性 ...
FFmpeg开发笔记(七十)Windows给FFmpeg集成AV1编码器libsvtav1
AV1是一种新兴的免费视频编码标准,它由开放媒体联盟(Alliance for Open Media,简称AOM)于2018年制定,融合了Google VP10、Mozilla Daala以及Cisco Thor三款开源项目的成果。据说在实际测试中,AV1标准比H.265(HEVC)的压缩率提升了 ...
DotTrace系列:7. 诊断 托管和非托管 内存暴涨
一:背景 1. 讲故事 分析托管和非托管内存暴涨,很多人潜意识里都会想到抓dump上windbg分析,但我说可以用dottrace同样分析出来,是不是听起来有点让人惊讶,哈哈,其实很正常,它是另辟蹊径采用底层的ETW机制,即开启 windows 底层日志,所以 dottrace 可以做,官方血统的 ...
4.Java SDK源码分析系列笔记-ArrayList
目录1. 是什么2. 如何使用3. 原理分析3.1. uml3.2. 构造方法3.3. add方法3.3.1. 确保容量足够容纳新的元素3.3.2. 把元素放入数组最后一个位置3.4. remove方法【按下标删除元素】3.4.1. 把数组index位置之后的数据往前挪3.4.2. 更新size【数 ...