Am Dienstag, den 13.09.2011, 13:35 +0200 schrieb Matej Kosik:
> Hi,
> 
> I have noticed that when I compile my program with
> 
>       ocamlc -vmthread ... threads.cma ...
> 
> options, then
> 
>       Unix.set_nonblock
> 
> function does not work. I.e. Unix.recv function called with a given
> socket can block. Is this an intended behavior?

Maybe not intended, but accepted (I reported that already years ago).
The VM threads have serious limits, and are not meant as a replacement
for kernel threads. So, some properties of file descriptors are always
reset on occasion (VM context switch, or Unix.select). I guess it is too
difficult to get this right.

Gerd
-- 
------------------------------------------------------------
Gerd Stolpmann, Darmstadt, Germany    [email protected]
Creator of GODI and camlcity.org.
Contact details:        http://www.camlcity.org/contact.html
Company homepage:       http://www.gerd-stolpmann.de
*** Searching for new projects! Need consulting for system
*** programming in Ocaml? Gerd Stolpmann can help you.
------------------------------------------------------------


-- 
Caml-list mailing list.  Subscription management and archives:
https://sympa-roc.inria.fr/wws/info/caml-list
Beginner's list: http://groups.yahoo.com/group/ocaml_beginners
Bug reports: http://caml.inria.fr/bin/caml-bugs

Reply via email to