[Haskell-cafe] Consecutive FFI calls

David Turner dct25-561bs at mythic-beasts.com
Wed Jun 3 20:05:35 UTC 2015


Excellent, thanks!
On 3 Jun 2015 7:58 pm, "Edward Z. Yang" <ezyang at mit.edu> wrote:

> The ordering is guaranteed, because full synchronization is used
> when threads migrate.  (It goes something like, a capability with
> a full run queue grabs all idle capabilities, distributes its
> threads to those capabilities, and then releases them.  The act
> of acquiring and releasing a capability is a synchronization point.)
>
> Cheers,
> Edward
>
> Excerpts from David Turner's message of 2015-05-28 09:24:50 -0700:
> > Hi,
> >
> > If I make a sequence of FFI calls (on a single Haskell thread) but
> > which end up being called from different OS threads, is there any kind
> > of ordering guarantee given? More specifically, is there a full memory
> > barrier at the point where a Haskell thread migrates to a new OS
> > thread?
> >
> > Many thanks,
> >
> > David
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.haskell.org/pipermail/ghc-devs/attachments/20150603/5ca80c2d/attachment.html>


More information about the ghc-devs mailing list