Are FFI calls interruptible?

Edward Z. Yang ezyang at MIT.EDU
Sun Apr 24 18:58:46 CEST 2011


Well, that will result in a race where, if the foreign call gets interrupted,
the asynchronous exception will get queued up and fire immediately once
the FFI call completes, thus enabling libusb_cancel_transfer to be called
but not acquire lock to be called. Is that the desired semantics?

Edward

Excerpts from Bas van Dijk's message of Sun Apr 24 12:23:19 -0400 2011:
> On 24 April 2011 10:26, Edward Z. Yang <ezyang at mit.edu> wrote:
> > No, you have to use the 'interruptible' keyword.
> 
> Good, I need them to be uninterruptible. So I guess I can apply
> uninterruptibleMask_ only to the 'acquire lock' in the following code
> from my usb library:
> 
> https://github.com/basvandijk/usb/blob/async/System/USB/Internal.hs#L1593
> 
> Thanks,
> 
> Bas



More information about the Glasgow-haskell-users mailing list