<br><br><div class="gmail_quote">On Fri, Oct 22, 2010 at 6:16 PM, Bulat Ziganshin <span dir="ltr">&lt;<a href="mailto:bulat.ziganshin@gmail.com">bulat.ziganshin@gmail.com</a>&gt;</span> wrote:<br><blockquote class="gmail_quote" style="margin: 0pt 0pt 0pt 0.8ex; border-left: 1px solid rgb(204, 204, 204); padding-left: 1ex;">
Hello John,<br>
<div class="im"><br>
Monday, October 18, 2010, 8:15:42 PM, you wrote:<br>
<br>
&gt; If anyone is listening, I would very much like for there to be a<br>
&gt; mechanism by which external functions can be called &quot;unsafe&quot;-ly, but<br>
&gt; without blocking all other Haskell threads.  I have code that does this:<br>
<br>
</div>+RTS -N2<br></blockquote><div><br>This doesn&#39;t work, which was why the OP asked in the first place.  When a thread calls an unsafe foreign function, it blocks everything until that function returns.<br></div></div>