diff options
-rw-r--r-- | testsuite/tests/lib-threads/close.ml | 16 |
1 files changed, 15 insertions, 1 deletions
diff --git a/testsuite/tests/lib-threads/close.ml b/testsuite/tests/lib-threads/close.ml index ce50ec8c5..c05070929 100644 --- a/testsuite/tests/lib-threads/close.ml +++ b/testsuite/tests/lib-threads/close.ml @@ -10,18 +10,32 @@ (* *) (***********************************************************************) +let debug = Printf.eprintf;; + let main () = + debug "starting\n%!"; let (rd, wr) = Unix.pipe() in + debug "after pipe\n%!"; let _ = Thread.create (fun () -> + debug "sub: starting\n%!"; ignore (Unix.write wr "0123456789" 0 10); + debug "sub: after write\n%!"; Thread.delay 3.0; + debug "sub: after delay\n%!"; print_endline "closing fd..."; - Unix.close rd) + Unix.close rd; + debug "sub: after close\n%!"; + ) () in + debug "after thread.create\n%!"; let buf = String.create 10 in + debug "after string.create\n%!"; print_endline "reading..."; ignore (Unix.read rd buf 0 10); + debug "after read\n%!"; print_endline "read returned" let _ = Unix.handle_unix_error main () + +;;debug "that's all folks\n%!" |