blob: 92e252d9e66d09efd003a9d7f67113858f0fe61a (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
|
(* TEST
include systhreads;
hassysthreads;
{
bytecode;
}{
native;
}
*)
let main () =
let (rd, wr) = Unix.pipe() in
let t = Thread.create
(fun () ->
Thread.delay 1.0;
print_endline "closing fd...";
Unix.close wr;
)
() in
let buf = Bytes.create 10 in
print_endline "reading...";
begin try ignore (Unix.read rd buf 0 10) with Unix.Unix_error _ -> () end;
print_endline "read returned";
t
let t = Unix.handle_unix_error main ()
let _ = Thread.join t
|