async_hooks.executionAsyncId()
- 返回: <number> 当前执行上下文的
asyncId
。 当有调用时对跟踪很有用。
const async_hooks = require('async_hooks');
console.log(async_hooks.executionAsyncId()); // 1 - 引导
fs.open(path, 'r', (err, fd) => {
console.log(async_hooks.executionAsyncId()); // 6 - open()
});
executionAsyncId()
返回的 ID 与执行时机有关,与因果无关(被 triggerAsyncId()
涵盖):
const server = net.createServer((conn) => {
// 返回服务器的 ID,而不是新连接的 ID,
// 因为回调在服务器的 MakeCallback() 的执行范围内运行。
async_hooks.executionAsyncId();
}).listen(port, () => {
//
async_hooks.executionAsyncId();
});
默认情况下,promise 上下文可能无法获得精确的 executionAsyncIds
。
请参阅 promise 执行跟踪部分。