[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [List Home]
[equinox-dev] Follow-up on splash-screen questions

As a side-track on https://bugs.eclipse.org/bugs/show_bug.cgi?id=173742 I raised the question why the splash-screen is not handled completely by Java. I'd like to continue that discussion here.

Andrew Niefer wrote:

Thomas, the splash screen work was about more than simply displaying a graphic.
We wanted to use SWT widgets in the splash screen, otherwise we would have
just stayed with the old splash story (which is separate from this discussion
about startup.jar). See http://wiki.eclipse.org/index.php/Equinox_Launcher_Plan
and bug 161569 <https://bugs.eclipse.org/bugs/show_bug.cgi?id=161569> for details of the investigations.

I thought the initial splash screen was a graphical image only. I realize that it gets more complicated when you need to pass a native handle to SWT classes booted at a later time. Using pure Java for the splash would probably rule out the use of SWT widgets.

Time-to-splash was a major consideration.  On a cold machine (just turned on,
no disk cache) the old splash method took around 6 seconds.  Showing a graphic
in java would have been about the same.  For a properly setup eclipse using JNI
to start the vm, the new launchre takes about 400ms on a cold start. (50ms on a
warm start).

My reaction was to Pascals statement that Java is too damn slow for a splash. I've tried various things on different machines, including cold-start and clearmem.exe. I never get times anywhere near the 7781ms reported for the "Funky Classloader" in comment #17. So question is, how much of that time can be contributed to the use of SWT?

Kind Regards,
Thomas Hallgren