From: Robert A Duff <bobduff@world.std.com>
Subject: Re: D.10
Date: 1999/04/13
Date: 1999-04-13T00:00:00+00:00 [thread overview]
Message-ID: <wccpv585zag.fsf@world.std.com> (raw)
In-Reply-To: m3btgstzx7.fsf@mheaney.ni.net
Matthew Heaney <matthew_heaney@acm.org> writes:
> Is an invocation of operation Suspend_Until_True on a suspension object
> by one task atomic with respect to an invocation of Suspend_Until_True
> on the same suspension object by another task?
Well, the RM doesn't say it is, so I guess it isn't. I admit the RM
isn't crystal clear on this point.
The *intent* is that this feature would be used in a situation where a
given suspension object is "owned" by a single task, and only that task
does Suspend_Until_True. That task publishes a handle on the suspension
object to the rest of the world, and other tasks can call Set_True to
wake it up. I would also expect that only the owner does Set_False
(presumably before "publishing"). Actually, it is set False by default
initialization, so you don't need to ever call Set_False, unless you
want to reuse the same suspension object.
The example you gave from Burns and Wellings seems weird to me,
whatever the RM says.
The run-time system I'm currently working on (for the ADI SHARC DSP
chip) has an implementation (just a few instructions) that will make the
example work. But it wouldn't surprise me if other implementations have
a race condition.
- Bob
--
Change robert to bob to get my real email address. Sorry.
next prev parent reply other threads:[~1999-04-13 0:00 UTC|newest]
Thread overview: 16+ messages / expand[flat|nested] mbox.gz Atom feed top
1999-04-12 0:00 D.10 Matthew Heaney
1999-04-12 0:00 ` D.10 Steve Quinlan
1999-04-12 0:00 ` D.10 James S. Rogers
1999-04-13 0:00 ` D.10 Matthew Heaney
1999-04-13 0:00 ` D.10 Robert Dewar
1999-04-13 0:00 ` D.10 Robert Dewar
1999-04-13 0:00 ` D.10 Matthew Heaney
1999-04-13 0:00 ` Robert A Duff [this message]
1999-04-13 0:00 ` D.10 Matthew Heaney
1999-04-13 0:00 ` D.10 Robert Dewar
1999-04-13 0:00 ` D.10 Robert A Duff
1999-04-13 0:00 ` D.10 Robert Dewar
1999-04-13 0:00 ` D.10 Robert Dewar
1999-04-13 0:00 ` D.10 Matthew Heaney
1999-04-13 0:00 ` D.10 Tucker Taft
1999-04-14 0:00 ` D.10 Robert Dewar
replies disabled
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox