| Summary: | [DS] SCRManager waits too long to enable components | ||||||
|---|---|---|---|---|---|---|---|
| Product: | [Eclipse Project] Equinox | Reporter: | Jens Kuebler <kuebler> | ||||
| Component: | Compendium | Assignee: | Stoyan Boshev <s.boshev> | ||||
| Status: | RESOLVED FIXED | QA Contact: | |||||
| Severity: | normal | ||||||
| Priority: | P3 | CC: | tjwatson | ||||
| Version: | unspecified | ||||||
| Target Milestone: | Juno M4 | ||||||
| Hardware: | PC | ||||||
| OS: | All | ||||||
| Whiteboard: | |||||||
| Attachments: |
|
||||||
|
Description
Jens Kuebler
I would have thought the wait is waiting for a notification from another thread. From what you state it sounds like this is not happening. Yes sometimes the workObject.notify() in SCRManager#performWork executes before the wait so it will wait the 1000msecs (In reply to comment #2) > Yes sometimes the > workObject.notify() > in SCRManager#performWork > executes before the wait so it will wait the 1000msecs Then something is not right in the logic. Shouldn't the loop use a while(condition)->do instead of do->while(condition)? This way you avoid waiting when there is no longer anything to wait for. (In reply to comment #3) > Then something is not right in the logic. Shouldn't the loop use a > while(condition)->do instead of do->while(condition)? This way you avoid > waiting when there is no longer anything to wait for. Yes, we can switch the "do-while" to "while" loop to fix this bug (In reply to comment #4) > (In reply to comment #3) > > Then something is not right in the logic. Shouldn't the loop use a > > while(condition)->do instead of do->while(condition)? This way you avoid > > waiting when there is no longer anything to wait for. > > Yes, we can switch the "do-while" to "while" loop to fix this bug Thanks Stoyan, I will mark this for juno. Please release a fix when you have it. Created attachment 207144 [details]
proposed patch
Adding the discussed change as patch
The patch is released in HEAD |