JS_SetFunctionCallback 编辑
Obsolete since JSAPI 37
This feature is obsolete. Although it may still work in some browsers, its use is discouraged since it could be removed at any time. Try to avoid using it.
Sets a callback to be run whenever a JavaScript function is invoked or exited. This lets you trace the execution of code, and is particularly useful for JavaScript tracers and profilers since it works across all run modes (interpreter, method JIT, trace JIT). Using this function may have a significant performance impact. See Function tracing for an example.
Note: This method is only available ifMOZ_TRACE_JSCALLS
was defined at compile time using --enable-trace-jscalls
.Syntax
void
JS_SetFunctionCallback(JSContext *cx, JSFunctionCallback fcb);
Name | Type | Description |
---|---|---|
cx | JSContext * | Pointer to a JS context from which to derive runtime information. Requires request. In a JS_THREADSAFE build, the caller must be in a request on this JSContext . |
fcb | JSFunctionCallback | The callback to execute when JavaScript functions are invoked and exited. Specify NULL to stop calling the current callback. The callback must not modify the current state of execution. The call stack cannot be relied upon, because this callback may be invoked from the JIT code when the stack frame and context are in an indeterminate state. |
Description
JS_SetFunctionCallback
sets a C function to be called each time a JavaScript function is invoked or exits.
fcb
is a pointer to the C function to call.
Note that debuggers should probably use JS_SetCallHook
in preference to this function, because it is invoked when the Javascript stack is guaranteed to be in a consistent state (and therefore it is valid to inspect and modify local variables, generate stack traces, and set breakpoints.)
Callback syntax
typedef void
(* JSFunctionCallback)(const JSFunction *fun,const JSScript *scr,
const JSContext *cx, int entering);
Name | Type | Description |
---|---|---|
fun | const JSFunction * | The JavaScript function being invoked or exited. |
scr | const JSScript * | The script being executed. |
cx | JSContext * | The JavaScript context in which the script is being run. |
entering | int | true if the callback is being called because the specified function is being invoked or false if the function is exiting. |
See Also
See Also
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论