type
status
date
slug
summary
tags
category
icon
password
第一性原理:资源管理的本质
1. 计算机资源的基本特性
2. 程序执行的本质:栈和异常
Go的defer:基于栈的资源管理
1. defer的底层实现原理
操作系统视角:
2. Go编译器的栈帧布局
3. 第一性原理:为什么Go需要defer?
原因1:错误处理的复杂性
原因2:Go的错误处理哲学
Java为什么不需要defer?
1. Java的资源管理演进史
第一阶段:手动管理(Java 1-6)
第二阶段:try-with-resources(Java 7+)
2. 语言设计哲学的差异
Java的设计哲学:
Go的设计哲学:
3. 操作系统层面的差异
系统调用的包装方式:
深入操作系统概念
1. 文件描述符的本质
资源限制:
2. 内存映射和资源管理
操作系统视角:
3. 网络资源管理
TCP协议栈视角: