$include_dir="/home/hyper-archives/boost/include"; include("$include_dir/msg-header.inc") ?>
From: William Kempf (sirwillard_at_[hidden])
Date: 2000-08-04 11:29:44
--- In boost_at_[hidden], scleary_at_j... wrote:
> > As for those wanting to start with vast definitions...
> >
> > I'm not sure why we need to do this. Most definitions are well
known
> > to anyone who's done concurrent programming. Unless we're
striving
> > to come up with new jargon there's nothing to define.
>
> Everyone knows what a "mutex" is. However, the problem comes with
the
> precise definition of a mutex. Is it recursive (i.e., can a thread
lock it
> if it already owns it)? Is it statically-initializable (so it can
be used
> in program startup/shutdown code)? These questions demonstrate the
need for
> a hard definition even of the simplest of synchronization
primitives.
The definition is simple. A mutex is a synchronization primitive
used to allow exclusive access to a shared resource. What you're
talking about isn't the definition, but the interface and semantics.
The design, if you will. This is *precisely* where I'm trying to go
here. I gave a small set of primitives to start with. Now I've
narrowed it even further to a single primitive. Let's decide to
start here and discuss the design and implementation of this
primitive.