方法内联  它的基本思想是在调用某个方法时,不通过跳转指令去执行该方法的代码,而是直接将该方法的代码复制到调用点处。这样可以减少方法调用的开销,包括减少函数调用和返回的指令执行时间,以及减少堆栈操作 方法内联能够触发更多的优化。通常而言,内联越多,生成代码的执行效率越高。然而,对于即时编译器来说 ...
                
                        
                            
                        
                    搜索插入位置(035) class Solution { public int searchInsert(int[] nums, int target) { int n = nums.length; int lef = -1; int rig = n; while(lef+1 < rig){ int ...
                
                        
                            
                        
                    PAL(Program-Aided Language models) 思想成为大模型 Agent 领域的重要范式。核心思路是 LLM 只负责语言任务,复杂的逻辑/计算交由程序执行。 通过合理设计 prompt,模型生成代码/SQL/逻辑描述,外部程序再执行,得到结果后反馈给 LLM,LLM 再生成最 ...
                
                        
                            
                        
                    正文 感冒了都没什么欲望了呢。明明以前一直都涩得不行,真是难得有这种时间呢(笑。 今年已经过了半年了,然而还是没有看几本书。本来原来打算看《营养学:概念与争论》来着,后面搁置了。转到客户部之后时间真的好稀缺,不过我想更多的原因是看这种学术类著作压力有点大吧。零碎的时间看这种学术书籍很难静得下心吸收什 ...
                
                        
                            
                        
                    创建wxWidgets应用程序 在本文中,我们将了解创建wxWidgets应用程序所需的基础知识。首先创建一个简单的示例程序,展示如何显示图标;接着通过另一个示例演示事件的使用方法;最后探讨wxWidgets应用程序中控件之间的通信机制。 一个简单的应用程序 首先我们创建一个非常基础的wxWidge ...
                
                        
                            
                        
                    本文系统性分析并优化了一个Spring Boot项目启动耗时高达 280 秒的问题。通过识别瓶颈、优化分库分表加载逻辑、异步初始化耗时任务等手段,最终将启动耗时缩短至 159 秒,提升近 50%。文章涵盖启动流程分析、性能热点识别、异步初始化设计等关键技术细节,适用于大型Spring Boot项目的... ...
                
                        
                            
                        
                    JVM内存结构分为5大区域,程序计数器、虚拟机栈、本地方法栈、堆、方法区。 程序计数器是什么? 特点: 线程私有 CPU会为每个线程分配时间片,当当前线程的时间片使用完以后,CPU就会去执行另一个线程中的代码 程序计数器是每个线程所私有的,当另一个线程的时间片用完,又返回来执行当前线程的代码时,通过 ...
                
                        
                            
                        
                    垃圾回收 引用计数法和可达性分析 引用计数法 即记录对象的 reference count 若≠0则保留 a, b对象相互引用, 不可回收, 造成内存泄露 可达性分析(JVM主流使用) 从GC Root出发的树状结构 若对象不可达则回收  GC Roots 包括(但不限于)如下几种: Java  ...
                
                        
                            
                        
                    本文首发于公众号:Hunter后端 原文链接:Golang基础笔记一之变量声明和类型介绍 这一篇笔记主要介绍 Golang 的基础内容,包括 Golang 的运行,变量声明以及 Golang 里的各种数据类型。 以下是本篇笔记目录: Golang 的运行 变量声明 Golang 数据类型 fmt 函 ...
                
                        
                            
                        
                    正文 感冒了。周天下午回宿舍吹空调吹的。 这么热的天,我居然还能感冒,我觉得自己也真是厉害。 周末过得相当糜烂。在斯少家里不是吃了睡,就是睡了吃,然后就是打游戏。周六跟他去南充参加他同事的婚礼,路上看到了好多飞机。 每次看见飞机都有些感触。虽然非常向往天空,不过坐了飞机之后总是会觉得,原来自己还是适 ...
                
                        
                            
                        
                    SpringBoot读取Resources下的文件 背景 在开发时候遇到需要通过 Resources 目录下某个 excel 文件作为模板生成文件。但遇到 POI 读取文件的时候发生了 No valid entries or contents found, this is not a valid 0 ...
                
                        
                            
                        
                    C++20 协程能让出控制权、能继续执行、没有线程栈的切换,看起来似乎很神奇,然而我用实打实的代码告诉你它就是个函数+状态机,你会不会拍桌子骂娘并从此对协程祛魅? ...
                
                        
                            
                        
                    大家好,我是R哥。 最近看到 TIOBE 公布的 2025 年 6 月编程语言排行榜: 排名 语言 占比 涨跌 1 Python 25.87% +10.48% 2 C++ 10.68% +0.65% 3 C 9.47% +0.24% 4 Java 8.84% +0.44% 5 C# 4.69% -1 ...
                
                        
                            
                        
                    单词搜索(079) class Solution { int m, n; public boolean exist(char[][] board, String word) { m = board.length; n = board[0].length; char[] words = word.to ...
                
                        
                            
                        
                    开发环境及功能 开发环境:linux 开发语言:C++ 编译工具:g++、cmake 调试:gdb 目的:使用C++实现一个读取配置文件的工具类,目的是读取key=value形式的配置,提高代码灵活性,解耦合。 实现 文件目录结构,未编译的目录 . ├── CMakeLists.txt ├── co ...
                
                        
                            
                        
                    几分钟应该看不完,私密马赛, 俺是标题党 既然来了, 看看吧, 球球你了 Java类加载器 类的生命周期和加载过程 加载 加载所有的.class文件/jar文件/网络流 →字节流 (JVM 与java.lang.classLoader协作) 存储于Metaspace/Method Area 校验 确 ...
                
3 列表和元组 主要内容: 列表和元组有什么用? 在列表/元组中查找的复杂性是什么? 如何实现这种复杂性? 列表和元组有哪些区别? 如何对列表进行追加? 什么时候应该使用列表和元组? 编写高效程序最重要的一点是了解所使用数据结构的保证。事实上,高效编程的很大一部分就是要知道你想对数据提出什么问题,并 ...
                        
                            
                        
                    在 Java 里,若要把BigDecimal类型转换为Integer类型,可借助intValue()或者intValueExact()方法。下面为你介绍这两种方法的具体使用以及它们之间的差异。 1. 采用intValue()方法(不进行溢出检查) 这种方法会把BigDecimal转换为int基本类型 ...
                
1.4 如何成为高性能程序员 编写高性能代码只是长期成功项目中高性能的一部分。团队远比速度提升和复杂的解决方案更重要。这其中有几个关键因素--良好的结构、文档、可调试性和共享标准。 假设你创建了一个原型。你没有对它进行彻底测试,也没有让团队对它进行审核。它看起来确实 “足够好”,并被推向生产。由于它 ...
                        
                            
                        
                    随着大模型(LLM)能力越来越强,RAG(Retrieval Augmented Generation,检索增强生成)技术成为增强大模型知识准确性的关键手段。 通过检索实时数据、外部文档,模型能回答更多基于事实的问题,降低“幻觉”概率。 而 LangChain 的 LangGraph 能将 LLM、 ...