Node.js中的一个bug导致使用async_hooks的应用程序在堆栈溢出时崩溃,而非抛出可捕获的错误。这影响了React、Next.js及所有使用AsyncLocalStorage的APM工具。修复已于2026年1月发布,建议用户尽快更新以确保服务可用性。
Async Local Storage是Node.js的一个特性,允许多个异步函数共享上下文而无需显式传递。它通过async_hooks模块实现,简化了代码管理,特别适用于身份验证等场景。使用run()方法可以方便地访问存储的数据,适合构建自定义上下文。
本文介绍了如何使用工具“why-is-node-running”来诊断Node.js进程未退出的原因,并通过示例代码展示了识别保持进程运行的活动句柄的方法。此外,介绍了Node.js的“async_hooks”机制,用于监控异步资源的生命周期,帮助开发者调试和管理资源。
完成下面两步后,将自动完成登录并继续当前操作。