Browse thread
[Caml-list] Unix module and threads
-
Janne Hellsten
- David Brown
-
Markus Mottl
-
Janne Hellsten
- skaller
- Keith Wansbrough
- Daniel Andor
- skaller
-
Janne Hellsten
[
Home
]
[ Index:
by date
|
by threads
]
[ Message by date: previous | next ] [ Message in thread: previous | next ] [ Thread: previous | next ]
[ Message by date: previous | next ] [ Message in thread: previous | next ] [ Thread: previous | next ]
Date: | 2004-09-06 (09:07) |
From: | Keith Wansbrough <Keith.Wansbrough@c...> |
Subject: | Re: [Caml-list] Unix module and threads |
Janne Hellsten <janne@hybrid.fi> writes: > Thank you Markus and David, this is sort of what I was afraid of (e.g., > curdir is shared among threads). Thank you for clarifying this. > > As my build scripts require the working directory to be set, I think I > have to work-around this and do something along the lines of: > > Unix.system "cd my_working_dir && build_cmd" > > I wonder if there's some other way of doing this portably and in a > thread-safe fashion? Instead of using Unix.system, do a fork()-and-exec() (as Unix.system presumably does under the hood), and set the current directory in the child process after the fork and before the exec. Take a look at the implementation of Unix.system in otherlibs/unix/unix.ml to see what I mean. --KW 8-) ------------------- To unsubscribe, mail caml-list-request@inria.fr Archives: http://caml.inria.fr Bug reports: http://caml.inria.fr/bin/caml-bugs FAQ: http://caml.inria.fr/FAQ/ Beginner's list: http://groups.yahoo.com/group/ocaml_beginners