Hi Elena,
Thanks for taking notes!
On Wed, 2007-02-14 at 11:26 -0500, Elena Zannoni wrote:
> Tim: stop the world or stop individual threads? Right now it's stop the
> world.
> But underlying mechanism to do stop each thread is there.
What you can do at all times is add an Instruction TaskObserver.
* Interface used to notify that a Task has executed a single
* instruction. updateExecuted
is called as soon as
* the Instruction observer is added to the Task. And whenever the
* Task starts running again (isn't blocked or suspended) it will
* be called on each instruction being executed.
*
* This TaskObserver can also be used for executing code that
* needs the Task to be (temporarily) blocked or suspended as soon
* as possible. updateExecuted()
will be called as
* soon as this observer has been properly added, and at that time
* the Task is suspended to make it possible to inspect the Task
* state. If no other action is request, the method can then just
* delete the observer from the Task again.
> volatile attribute can make a variable stick around even with optimization.
And I only added volatile to make sure they wouldn't get optimized away.
Filed bug report #4048 for this. (Does the fhpd have a tracker bug?)
> Help