Concurrency issue with dynamic linker in GHC

Donald Bruce Stewart dons at
Sun Oct 22 22:37:27 EDT 2006

> Hello Donald,
> Sunday, October 22, 2006, 9:04:02 AM, you wrote:
> >> can't you define this call as 'safe'?
> > But is it safe. Hmm.... I get kind of queasy when mucking about in the rts.
> i don't understand you (because of my weak English).
> 'safe' specifier is just says that function should be called in _safe_
> way that will allow to continue execute other Haskell threads. for
> functions declared as 'unsafe' GHC uses simplified call method that
> freezes execution of all Haskell threads until called function will
> return
> look for details in

Yes, I understand this. I just don't know how safe it is to have other
threads continue executing while I'm swapping code in and out of the
> >     foreign import ccall unsafe "lookupSymbol"
> >        c_lookupSymbol :: CString -> IO (Ptr a)

This could be safe, then, for other threads to continue. Yes.

-- Don

More information about the Glasgow-haskell-users mailing list