How to update the hookmask of the coroutine?

classic Classic list List threaded Threaded
1 message Options
Reply | Threaded
Open this post in threaded view
|

How to update the hookmask of the coroutine?

actboy168@gmail.com

The hookmask of the coroutine will only copy the value of the parent thread when it is created. I wrote a debugger, and for performance reasons, I won't add line/count hooks at the begining. But when I want to pause lua, I need to add a line hook or a count hook for each coroutine because they have already been created. This means that I need to save each coroutine to the list, but I can't get the create and close events of the coroutine.

 

In addition, saving all the coroutines does not solve all the problems. Also for performance reasons, I will check if the function contains a breakpoint in the call hook and return hook to decide whether to add a line hook. But if lua_resume is called, these checks will not be triggered.

 

Should there be a resume hook and a resume return hook, just like a call hook and a return hook?

 

--actboy168