Bug 279037 - IJavaThread.queueRunnable needs to provide us a way of monitoring the runnable
Summary: IJavaThread.queueRunnable needs to provide us a way of monitoring the runnable
Status: NEW
Alias: None
Product: JDT
Classification: Eclipse Project
Component: Debug (show other bugs)
Version: 3.5   Edit
Hardware: PC Windows XP
: P3 enhancement (vote)
Target Milestone: ---   Edit
Assignee: JDT-Debug-Inbox CLA
QA Contact:
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2009-06-03 18:32 EDT by Samantha Chan CLA
Modified: 2009-06-03 18:32 EDT (History)
0 users

See Also:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Samantha Chan CLA 2009-06-03 18:32:32 EDT
We run evaluations to populate the variables view.  For us to run the evaluations, we call IJavaThread.queueRunnable(...) to queue our evaluation runnable onto JDIThread.  We then wait for the runnable to get run before returning the variables.  The problem is that if the JDIThread that we queue our runnable on has terminated while we are waiting for the runnable to run, the JDIThread simply discards our runnable without running them.  We do not get a notification that the runnable has been discarded and will continue waiting.  

We are waiting for the runnable on the Label Update Job.  Since we are forever waiting, we hold up the label update jobs and all subsequent requests to update the variables view.  Things just queue up on the label update job, and no variables labels will get updated once we get to this state.

I am requesting that we enhance the IJavaThread.queueRunnable API to allow us to monitor our runnable.  Thereby, allowing us to stop waiting if we know that our runnable has been cancelled.