Interruptible operations will raise an InterruptedError if they receive an asynchronous interruption request from another thread while ingaged in a lengthy wait.
The Thread.wait method conforms to the VM Interruption protocol, along with other operations that are declared by the core module or by other extensions. Other interruptible operations are, currently:
We are working to extend the protocol to other VM-level and sustem level operations.
Other than coming from embedding applications, interruption requests can be generated by the Thread.stop method, that will send an asynchronous interruption request to the target thread.