[Numpy-discussion] Handling interrupts in NumPy extensions

David M. Cooke cookedm at physics.mcmaster.ca
Thu Aug 24 18:40:55 CDT 2006

On Aug 24, 2006, at 18:38 , Travis Oliphant wrote:

> You can already use the approach suggested:
> if (PyOS_InterruptOccurred()) goto error
> to handle interrupts.  The drawback of this approach is that the loop
> executes more slowly because a check for the interrupt occurs many  
> times
> in the loop which costs time.
> The advantage is that it may work with threads (I'm not clear on  
> whether
> or not PyOS_InterruptOccurred can be called without the GIL, though).

It should be; it's pure C code:

         if (!interrupted)
                 return 0;
         interrupted = 0;
         return 1;

(where interrupted is a static int).

|David M. Cooke              http://arbutus.physics.mcmaster.ca/dmc/
|cookedm at physics.mcmaster.ca

More information about the Numpy-discussion mailing list