Concurrency issue with dynamic linker in GHC

Donald Bruce Stewart dons at cse.unsw.edu.au
Sat Oct 21 05:03:34 EDT 2006


bulat.ziganshin:
> Hello Vyacheslav,
> 
> Saturday, October 21, 2006, 7:37:19 AM, you wrote:
> 
> > I am running ghc 6.4.2 on a Win32 machine. I'm using hs-plugins in one
> > thread and a simple getLine loop in another. It appears that getLine
> > blocks the hs-plugins thread on Win32 (this has been verified to work
> > fine on freeBSD). I've tried various combinations of -threaded flag
> > and forkIO/forkOS and always get the undesireable result.
> 
> _may be_ it is one more consequence of lack of IO manager in
> windows/threaded RTS ( http://hackage.haskell.org/trac/ghc/ticket/637 )

Oh, that's almost certainly it. Bulat++ 
It's blocking on the foreign call (into the linker), since there's no IO
manager thread, I think.
  
> try _without_ -threaded. if it don't work, you can try my I/O library:
> http://haskell.org/haskellwiki/Library/Streams
> 
> use 'vGetLine fdStdIn' in order to read lines. you should strip
> chr(13) at line-end by yourself because my lib don't implements
> CR+LF->LF conversion
> 
> feel free to ask me more, i'm speaking russian ;)

-- Don


More information about the Glasgow-haskell-users mailing list