- 博客(22)
- 问答 (1)
- 收藏
- 关注
原创 深入剖析Go Channel:从底层原理到高阶避坑指南|Go语言进阶(5)
深入解析Go channel底层机制与实战避坑!从hchan结构体到环形缓冲区,揭秘channel工作原理;剖析5大常见陷阱(死锁/泄漏/错误关闭等),提供最佳实践与性能优化技巧。掌握这些,让你的Go并发代码更健壮高效!
2025-04-11 10:00:29
923
原创 Go并发背后的双引擎:CSP通信模型与GMP调度|Go语言进阶(4)
深入解析Go并发核心:CSP模型与GMP调度器如何协同工作。从理论到实践,揭秘goroutine高效调度机制,掌握并发编程最佳实践,避免常见性能陷阱。
2025-04-09 10:04:21
1118
原创 Go语言GC:三色标记法工程启示|Go语言进阶(3)
Go的GC虽简化了内存管理,却可能成为性能瓶颈。本文深入解析三色标记法原理与并发GC挑战,揭示写屏障如何保障内存安全。通过5大实践策略(减少分配/预分配内存/减少指针/调优GOGC/监控指标)降低GC影响,并分析不同场景的优化权衡。理解这些机制,能编写更高效的Go代码,在延迟、吞吐与内存间找到最佳平衡。
2025-04-02 22:34:21
1025
原创 Go语言内存管理揭秘:三级分配器架构与性能优化|Go语言进阶(2)
探秘Go语言内存管理的核心机制:从mcache的无锁分配,到mcentral的全局缓存,再到mheap的系统交互。深入剖析内存分配背后的原理,图解关键数据结构,并提供实用优化技巧。理解这套精妙的三级分配体系,将帮你写出更高效的Go代码,显著提升程序性能。
2025-03-31 17:58:16
866
原创 Go逃逸分析全解析:从原理到pprof实战诊断|Go语言进阶(1)
深入解析Go逃逸分析机制,从原理到实战优化。掌握编译器-m参数和pprof工具诊断逃逸问题,学习减少堆分配的编码技巧,提升Go程序内存效率。包含常见逃逸场景分析和优化案例,助你写出高性能Go代码。
2025-03-28 23:31:34
1004
原创 【Dev常识】为什么搜索越来越难用?向量数据库揭开了我多年的困惑!
你是否发现各大平台的搜索功能越来越难用?搜"手机没电"却推荐充电宝广告?找"圆领毛衣"总出现高领款?本文用小学生都能听懂的大白话,揭秘AI时代搜索的终极答案——向量数据库!二十年老码农亲述:原来让ChatGPT秒答专业问题的黑科技,竟藏在2048个数字组成的"魔法向量"里!(附真实场景:1分钟看懂智能客服/商品推荐/文档检索背后的惊天操作)
2025-03-11 08:41:11
826
原创 【日常分享】Mac arm编译x64的node项目也太慢了,害我不得不使用github流水线
Mac arm编译x64的node项目也太慢了,害我不得不使用github流水线,如果你没搞过也需要就来看看吧
2025-03-02 04:02:08
335
原创 一文解释:为何近年AI爆火?普通人需要知道什么?
深度解析:为什么近两年AI突然席卷全球?从“图灵测试”到“涌现现象”,揭秘大语言模型为何成为AI革命的唯一焦点!一文终结困惑,破除营销洗脑,带你看清AI爆火背后的逻辑与未来方向!
2025-02-24 04:01:09
1238
原创 实战对比:DeepSeek vs ChatGPT,谁更胜一筹?
想知道DeepSeek、GPT-4、Claude等热门AI模型谁更牛?这篇文章带你深入测评!从Blender脚本到贪吃蛇游戏,再到LLM模型运行和Kratos框架开发,全方位对比各模型的实战表现。
2025-02-22 05:04:56
654
原创 【GO语言】简单测试下,Go打不过Java,Why?
起因,最近github上火了一个非常简单的测试项目,`Go`完全打不过`Java`和`Kotlin`
2024-12-04 13:35:59
893
原创 【C/C++】搞不懂指针,指针只是一种普通的变量
指针是C/C++中非常强大的工具,理解了它的本质——存储地址的变量,就能更好地掌握它的用法。C++中的引用作为指针的更高层次封装,提供了更简洁的语法和更高的安全性。任何变量名实际上都代表一个虚拟地址,无论是整数,指针,数组,复合结构,本质上都是一样的。指针是存储地址的变量,和是操作指针的关键。C++中的引用是指针的语法糖,更易用且更安全。指针和数组可以结合使用进行灵活操作。
2024-11-28 02:57:34
745
原创 【C/C++】理解 C/C++ 中的堆、栈、静态区和只读区(重传)
栈区(Stack)栈区用于存储函数调用时的临时变量(如局部变量、函数参数等)。它由操作系统自动管理,分配和释放内存,速度快,但空间有限。堆区(Heap)堆区是程序运行中动态分配内存的区域,通常由程序员通过malloc或new分配内存,并需要用free或delete手动释放。静态区(Static Segment)静态区存储程序中的全局变量、静态变量和常量。它们在程序运行期间分配一次,直到程序结束时才释放。只读区(Read-Only Segment)只读区存放不可修改的常量数据(如字符串字面量)。
2024-11-27 20:57:55
761
原创 【C/C++】结构体/类内的内存对齐,一个有意思的特性(重传)
C/C++在结构体和类在内存中的存储结构,注意空间和时间往往是反比关系,很多程序优化都符合这个原则,但也不绝对,有时要用好才可以,对于大多数程序员来说,其实都无视了这种细节上的优化。(很多语言的内存对齐都不会自动优化)大类型优先排列:从大到小排列成员,减少填充字节。相同类型集中:将相同对齐边界的成员放在一起,避免交错浪费。使用位域压缩小型成员:尤其是布尔值或小范围数据。慎用强制取消对齐:避免性能损失。减少指针浪费。
2024-11-27 16:36:29
1129
原创 【软件Dev常识】小白误区 | 所有程序都是运行在C语言之上的
我看一些知识区内容时,发现很多逆天评论,今天讨论(没C语言啥软件都运行不了)。真的逆天。(本人并不排斥C语言)
2024-11-05 02:52:29
714
原创 【软件Dev常识】Rust(无unsafe),所有编程语言都能写出内存泄漏
今天小电视给我推送了一个视频,讲美国不知道什么部门(视频里这样说的),提倡底层软件去C/C++化,原因是因为C/C++内存不安全,那我只能说,不是营销号无脑,就是技术部门无脑。
2024-11-04 23:07:09
881
原创 【软件Dev/Ops常识】软链接的作用,开发也可以来看看
最近在开发Blender插件的时候用到了软链接,因为是Windows上的软链之前没用过想记个笔记,但想了想又可以拿来写博文。实际上我本来想用AI生成这篇文章,但我试了GPT-4o,Claude-3.5-Sonnet,OpenAI o1-mini,结果都不尽人意,所以还是手写了这篇文章。本文理论在前,实践在后。看实践的话,无索引平台可以手动往下拉一下。
2024-10-10 11:11:53
1222
原创 【Flutter】flutter doctor network resources 报错,解决国内开发环境问题
flutter doctor network resources 的报错问题如何解决
2023-10-30 09:33:49
7784
1
空空如也
紧急提问,为什么我的Dev c++允许使用变量作为数组长度,这种现象正常么?新标准?
2019-09-04
TA创建的收藏夹 TA关注的收藏夹
TA关注的人