Skip to main content

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [List Home]
Re: [cdt-dev] DsfSourceDisplayAdapter question

Hi Dobrin,
You should trust the comment that this method should be only called in the session thread.  Looking at the method you mentioned though:

        protected IStatus run(final IProgressMonitor monitor) {
            if (monitor.isCanceled()) {
                return Status.CANCEL_STATUS;
            }
            
            final SourceLookupResult result = performLookup();
            executeFromJob(new DsfRunnable() { public void run() {
                if (!monitor.isCanceled()) { 
                    fPrevResult = result;
                    fPrevFrameData = fFrameData;
                    fRunningLookupJob = null;
                    startDisplayJob(fPrevResult, fFrameData, fPage, fEventTriggered);
                }
            }});
            return Status.OK_STATUS;
        }

It seems that startDisplayJob() should always be called on the services session thread as guranteed by executeFromJob().

-Pawel

On 09/15/2010 08:46 AM, Alexiev, Dobrin wrote:

Hello,

 

I noticed that DsfSourceDisplayAdapter. startDisplayJob is being called from a worker thread DsfSourceDisplayAdapter.LookupJob.run().

At the same time there is a comment for DsfSourceDisplayAdapter. startDisplayJob “ To be called only on dispatch thread.”

 

I am debugging a problem that the DsfSourceDisplayAdapter. doneStepping is not called and that prevents the user from further stepping.

 

I’ll debug further the issue but I was wandering:

should I trust the comment or;

the method is intended to be called from multiple threads?

 

Thanks

Dobrin

_______________________________________________ cdt-dev mailing list cdt-dev@xxxxxxxxxxx https://dev.eclipse.org/mailman/listinfo/cdt-dev


Back to the top