Concurrency issue with dynamic linker in GHC

Bulat Ziganshin bulat.ziganshin at gmail.com
Sun Oct 22 14:42:14 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 http://www.haskell.org/~simonmar/papers/conc-ffi.pdf


>     foreign import ccall unsafe "lookupSymbol"
>        c_lookupSymbol :: CString -> IO (Ptr a)


-- 
Best regards,
 Bulat                            mailto:Bulat.Ziganshin at gmail.com



More information about the Glasgow-haskell-users mailing list