mirror of
https://github.com/zebrajr/node.git
synced 2026-01-15 12:15:26 +00:00
doc: clarify async execute callback usage
Clarify that calls to N-API should be avoided in the 'execute' callback. PR-URL: https://github.com/nodejs/node/pull/21217 Refs: https://github.com/nodejs/help/issues/1318 Reviewed-By: James M Snell <jasnell@gmail.com> Reviewed-By: Trivikram Kamat <trivikr.dev@gmail.com> Reviewed-By: Vse Mozhet Byt <vsemozhetbyt@gmail.com>
This commit is contained in:
@@ -179,6 +179,11 @@ operations. Callback functions must statisfy the following signature:
|
||||
typedef void (*napi_async_execute_callback)(napi_env env, void* data);
|
||||
```
|
||||
|
||||
Implementations of this type of function should avoid making any N-API calls
|
||||
that could result in the execution of JavaScript or interaction with
|
||||
JavaScript objects. Most often, any code that needs to make N-API
|
||||
calls should be made in `napi_async_complete_callback` instead.
|
||||
|
||||
#### napi_async_complete_callback
|
||||
Function pointer used with functions that support asynchronous
|
||||
operations. Callback functions must statisfy the following signature:
|
||||
@@ -3322,7 +3327,14 @@ asynchronous workers. Instances are created/deleted with
|
||||
|
||||
The `execute` and `complete` callbacks are functions that will be
|
||||
invoked when the executor is ready to execute and when it completes its
|
||||
task respectively. These functions implement the following interfaces:
|
||||
task respectively.
|
||||
|
||||
The `execute` function should avoid making any N-API calls
|
||||
that could result in the execution of JavaScript or interaction with
|
||||
JavaScript objects. Most often, any code that needs to make N-API
|
||||
calls should be made in `complete` callback instead.
|
||||
|
||||
These functions implement the following interfaces:
|
||||
|
||||
```C
|
||||
typedef void (*napi_async_execute_callback)(napi_env env,
|
||||
|
||||
Reference in New Issue
Block a user