返回首页
最新
我构建了一个Go实用库,灵感来源于JavaScript的async库,使用Go 1.18+的泛型进行符合习惯的实现。尽可能避免使用反射和interface{}。
该库提供了大约70个函数,分布在四个包中:
- 同步与异步:包括对切片和映射的map、filter、detect、reduce、every、some、reject、groupBy等操作。每个异步函数都在goroutine中运行迭代器,并具备恐慌恢复机制。
- 并发限制:所有异步函数都有一个Limit变体,通过信号量限制goroutine的数量。
- 工作池:一个通用的工作队列,具有可配置的缓冲区、并发性、超时和优雅的关闭机制。
- 控制流:采用瀑布式的顺序执行,支持类型安全的上下文传递。
免责声明:部分代码是使用Claude Code生成的。我这个项目的目标之一是实验最新的模型,看看它们在真实代码库中的能力——从实现到测试再到文档的编写。
使用以下命令获取库:`go get github.com/skatiyar/goutils@v1.0.0`
欢迎对API设计提出反馈,以及函数命名是否符合Go的习惯。
如果你可以用Claude Code(或类似工具)几乎编写任何代码,那么哪些类型的网络业务将继续保持可行或盈利呢?
来源:AI正在杀死SaaS - https://nmn.gl/blog/ai-killing-b2b-saas
Oracle的免费套餐(4个ARM核心,24GB内存,永久有效)非常不错,但由于容量问题,几乎无法进行配置。我编写了一个Terraform重试脚本,可以自动尝试,直到可用容量出现。<p>该脚本还修复了在Cloud Shell中常见的“未找到适当的密钥ID配置”错误。<p>GitHub链接:<a href="https://github.com/ekadetov/oci-terraform-retry-script" rel="nofollow">https://github.com/ekadetov/oci-terraform-retry-script</a>