Community
Participate
Working Groups
Build Identifier: I20110613-1736 In case many components get activated on start up, the start time of eclipse significantly rises. The reason is the Service Component Manager that sleeps for too long in case components get activated very fast. SCRManager#startedBundle: components.wait(1000); a components.wait(10) suffices Reproducible: Always
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