As far as i understood , this is a way to insert own function to force VM to interrupt.
This is cool.
But i don't see another insertion point, which could make this feature complete. Suppose my plugin needs to handle some external events. Then, in my custom interrupt checker i can check if there any pending events to handle, while during interrupt i should be able to install own routine as well, which could actually handle events (like convert events to some object(s) and/or signal semaphore etc) without worrying that i'm doing this in the middle of interpreter cycle, which may damage interpreter's volatile state.