会员
周边
新闻
博问
闪存
赞助商
Chat2DB
所有博客
当前博客
我的博客
我的园子
账号设置
会员中心
简洁模式
...
退出登录
注册
登录
Acyclonepl
首页
新随笔
联系
订阅
管理
2026年6月1日
怎么写一个python脚本,批量生成特定的游戏id,调用网站4399API,查看该id是否存在?如果404说明不存在
摘要: 下面是一个使用 Python 编写的批量检测 4399 游戏 ID 是否存在的脚本。它会生成指定范围的数字 ID,构造对应的游戏页面 URL,通过 HTTP 状态码判断 ID 是否存在(404 表示不存在,200 表示存在)。 脚本示例 import requests import time imp
阅读全文
posted @ 2026-06-01 21:47 Acyclonepl
阅读(1)
评论(0)
推荐(0)
2026年5月21日
如果要对原子值和互斥锁进行二选一,你认为最重要的三个决策条件应该是什么?
摘要: 在原子值(atomic)和互斥锁(mutex)之间做选择,本质上是在 “无锁的局部原子性” 与 “有锁的全局原子性” 之间做权衡。 如果只能选三个最重要的决策条件,我会关注下面这三点: 条件一:临界区的规模与操作的复合性 这是最根本的界限:你究竟要保护多少东西? 如果只是对一个基本类型的变量做单次读
阅读全文
posted @ 2026-05-21 19:23 Acyclonepl
阅读(3)
评论(0)
推荐(0)
2026年5月16日
程序员会消失吗?
摘要: 你这个观点非常犀利,而且抓住了问题的一个本质矛盾。我很认同你的核心判断:“程序员”这个职业不会消失,但它会被重新定义——而调试、引导、约束我们这些大模型的人,正是新程序员的雏形。 我把你的论点拆开来,从三个层面聊聊我的看法。 1. 你说的“调试大模型的人就是程序员”,完全成立 这背后其实是一个定义问
阅读全文
posted @ 2026-05-16 20:41 Acyclonepl
阅读(6)
评论(0)
推荐(0)
2026年5月13日
条件变量sync.Cond
摘要: 下面来详细拆解 sync.Cond 条件变量。 一、什么是条件变量,它解决什么问题? 互斥锁 (sync.Mutex) 解决的是互斥进入临界区的问题,但它本身没法表达 “等待某个条件成立” 这种语义。 当 goroutine 发现条件不满足时,一般只能两种做法: 忙等:循环检查条件占用 CPU; 定
阅读全文
posted @ 2026-05-13 15:29 Acyclonepl
阅读(6)
评论(0)
推荐(0)
*sync.Cond类型的值可以被传递吗?那sync.Cond类型的值呢?
摘要: *sync.Cond:放心传递,所有使用者共同操作同一个条件变量。 sync.Cond 值:不可复制传递,必须始终以指针形式使用,否则会出现难以调试的并发 bug。
阅读全文
posted @ 2026-05-13 14:33 Acyclonepl
阅读(3)
评论(0)
推荐(0)
你知道互斥锁和读写锁的指针类型都实现了哪一个接口吗?
摘要: 它们都实现了 sync.Locker 接口。 sync.Locker 接口的定义 在 sync 包中,Locker 是一个极简的接口,只有两个方法: type Locker interface { Lock() Unlock() } 谁实现了它? *sync.Mutex 有 Lock() 和 Unl
阅读全文
posted @ 2026-05-13 14:27 Acyclonepl
阅读(5)
评论(0)
推荐(0)
2026年5月12日
对比 channel 和互斥锁的使用场景
摘要: 一、核心设计差异 sync.Mutex:保护共享内存区域。多个 goroutine 都想访问同一块数据,通过锁保证互斥访问。重点是 “互斥”。 channel:传递数据的所有权。通过发送和接收,把数据从一个 goroutine 转移给另一个。重点是 “通信”和“传递所有权”。 二、什么时候用 syn
阅读全文
posted @ 2026-05-12 16:46 Acyclonepl
阅读(4)
评论(0)
推荐(0)
Go语言测试2
摘要: 在 Go 里,可以通过 go test 的几个标志来开启测试覆盖度分析,同时这种做法会带来一些运行时的开销,需要注意。 一、如何开启测试覆盖度分析? 1. 最简单的用法:-cover go test -cover ./... 这会输出每个被测包在测试中执行的语句占比,例如: ok example.c
阅读全文
posted @ 2026-05-12 11:35 Acyclonepl
阅读(12)
评论(0)
推荐(0)
Go语言测试1
摘要: 在 Go 的测试框架里,testing.T(用于单元测试)和 testing.B(用于基准测试)都实现了 testing.TB 接口,因此它们共享一套日志、断言、跳过、并行和资源管理的方法;同时 testing.B 还有一组专为性能测量设计的独有方法。下面我按功能梳理一下这些方法以及它们的作用。 一
阅读全文
posted @ 2026-05-12 11:34 Acyclonepl
阅读(7)
评论(0)
推荐(0)
2026年5月11日
我们可以在defer函数中恢复 panic,那么可以在其中引发 panic 吗?
摘要: 在 Go 中,可以在 defer 函数里引发 panic,但这会引入微妙的行为变化。核心依赖于当前 goroutine 是否已经处于 panic 状态,以及 recover 的调用时机。 1. 正常执行流中,在 defer 里引发 panic 如果函数正常执行到返回(没有发生 panic),defe
阅读全文
posted @ 2026-05-11 19:36 Acyclonepl
阅读(4)
评论(0)
推荐(0)
下一页