Details
-
Improvement
-
Status: Closed
-
Major
-
Resolution: Fixed
-
scr-1.4.0
-
None
Description
Currently components are activated asynchronously. This works perfect but adds delay to startup sequences. An additional problem is that on system startup once the FRAMEWORK_STARTED event is received, SCR is still busy activating components. This creates a problem if we want to decide on the actual system state.
Conversely, disposal (and disabling) of components always takes place immediately, because either a required dependency is about to go away or the providing bundle is stopped. In the first case asynchronous disabling will lead to problems because of unavailable services and the second case might cause IllegalStateExceptions if the BundleContext is accessed after the bundle has been stopped.