/** * In multi-threaded environment we often cannot leverage multiple core fully in bootstrap because the deployer * threads are often blocked by the reflection API or waiting to get a classloader lock. While waiting for classes to be loaded or * reflection metadata to be obtained, we can make use of the idle CPU cores and start resolving container lifecycle event observers * (extensions) upfront for those types of events we know we will be firing. Since these resolutions are cached, firing of the * lifecycle events will then be very fast. * */ @SuppressFBWarnings(value = "RV_RETURN_VALUE_IGNORED_BAD_PRACTICE", justification = "We never need to synchronize with the preloader.") void preloadContainerLifecycleEvent(Class<?> eventRawType, Type... typeParameters) { executor.submit(new PreloadingTask(new ParameterizedTypeImpl(eventRawType, typeParameters, null))); }
/** * In multi-threaded environment we often cannot leverage multiple core fully in bootstrap because the deployer * threads are often blocked by the reflection API or waiting to get a classloader lock. While waiting for classes to be loaded or * reflection metadata to be obtained, we can make use of the idle CPU cores and start resolving container lifecycle event observers * (extensions) upfront for those types of events we know we will be firing. Since these resolutions are cached, firing of the * lifecycle events will then be very fast. * */ @SuppressFBWarnings(value = "RV_RETURN_VALUE_IGNORED_BAD_PRACTICE", justification = "We never need to synchronize with the preloader.") void preloadContainerLifecycleEvent(Class<?> eventRawType, Type... typeParameters) { executor.submit(new PreloadingTask(new ParameterizedTypeImpl(eventRawType, typeParameters, null))); }
/** * In multi-threaded environment we often cannot leverage multiple core fully in bootstrap because the deployer * threads are often blocked by the reflection API or waiting to get a classloader lock. While waiting for classes to be loaded or * reflection metadata to be obtained, we can make use of the idle CPU cores and start resolving container lifecycle event observers * (extensions) upfront for those types of events we know we will be firing. Since these resolutions are cached, firing of the * lifecycle events will then be very fast. * */ @SuppressFBWarnings(value = "RV_RETURN_VALUE_IGNORED_BAD_PRACTICE", justification = "We never need to synchronize with the preloader.") void preloadContainerLifecycleEvent(Class<?> eventRawType, Type... typeParameters) { executor.submit(new PreloadingTask(new ParameterizedTypeImpl(eventRawType, typeParameters, null))); }
/** * In multi-threaded environment we often cannot leverage multiple core fully in bootstrap because the deployer * threads are often blocked by the reflection API or waiting to get a classloader lock. While waiting for classes to be loaded or * reflection metadata to be obtained, we can make use of the idle CPU cores and start resolving container lifecycle event observers * (extensions) upfront for those types of events we know we will be firing. Since these resolutions are cached, firing of the * lifecycle events will then be very fast. * */ @SuppressFBWarnings(value = "RV_RETURN_VALUE_IGNORED_BAD_PRACTICE", justification = "We never need to synchronize with the preloader.") void preloadContainerLifecycleEvent(Class<?> eventRawType, Type... typeParameters) { executor.submit(new PreloadingTask(new ParameterizedTypeImpl(eventRawType, typeParameters, null))); }
/** * In multi-threaded environment we often cannot leverage multiple core fully in bootstrap because the deployer * threads are often blocked by the reflection API or waiting to get a classloader lock. While waiting for classes to be loaded or * reflection metadata to be obtained, we can make use of the idle CPU cores and start resolving container lifecycle event observers * (extensions) upfront for those types of events we know we will be firing. Since these resolutions are cached, firing of the * lifecycle events will then be very fast. * */ @SuppressFBWarnings(value = "RV_RETURN_VALUE_IGNORED_BAD_PRACTICE", justification = "We never need to synchronize with the preloader.") void preloadContainerLifecycleEvent(Class<?> eventRawType, Type... typeParameters) { executor.submit(new PreloadingTask(new ParameterizedTypeImpl(eventRawType, typeParameters, null))); }
/** * In multi-threaded environment we often cannot leverage multiple core fully in bootstrap because the deployer * threads are often blocked by the reflection API or waiting to get a classloader lock. While waiting for classes to be loaded or * reflection metadata to be obtained, we can make use of the idle CPU cores and start resolving container lifecycle event observers * (extensions) upfront for those types of events we know we will be firing. Since these resolutions are cached, firing of the * lifecycle events will then be very fast. * */ @SuppressFBWarnings(value = "RV_RETURN_VALUE_IGNORED_BAD_PRACTICE", justification = "We never need to synchronize with the preloader.") void preloadContainerLifecycleEvent(Class<?> eventRawType, Type... typeParameters) { executor.submit(new PreloadingTask(new ParameterizedTypeImpl(eventRawType, typeParameters, null))); }