Date: 2000-06-07 09:06:30
> One thing that noone has mentioned is process/task related issues. You
> can, on Win32 for example, implement synchronization primitives that are
> fine within process, but will break out-of-process. I am assuming that
> all of the semantic guarantees made so far relate to in-process
> concurrency (and may, but not necessarily, extend out-of-process).
The semantic guarantees scale seamlessly to process synchronization. Just
allow each object to have a name.
About 1 1/2 years ago, I began playing with this dimension of the
synchronization game. There are thread-level sync. primitives and
process-level sync. primitives. I actually wanted to go further -
synchronize processes running on different computers on a network --
essentially, computer-level sync. primitives.
The semantic guarantees will also extend to computer synchronization
primitives -- if we add another name, the computer name. On that computer a
"synchronization server" daemon/service will be running that provides the
computer-level synchronization primitives. I actually had a simple form of
this running at one time.
Let's not look at this for now -- we're going to have a hard enough time
with thread/process level! But keep this avenue open for future expansion.
As distributed systems become more common, something like this may need to
Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk