Skip to main content

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [List Home]
[Dltk-dev] is the isSyncrhonized() check in DLTKContentTypeManager.isValidResourceForContentType() needed? (and one other performance item)

That isSynchronized() call  in the if:

        // Check resources accessibility and synchronization
        if (!resource.isAccessible()
                || !resource.isSynchronized(IResource.DEPTH_ZERO)) {
            return false;
        }

is a hotspopt when i profile now a full build.

and another thing is this one in ValidatorRuntime

private static void initializeValidators() {
        ValidatorDefinitionsContainer validatorDefs = null;
        boolean setPref = false;
        synchronized (fgValidatorLock) {
            if (isInitialized) {
                // return;
            }



why is that return disabled? Annotations do say that it is only called once but this is not the case
it is called over and over again for every build.

If i enable that return and comment that above if then my build is about 2.5 times faster
so the question is do we really need to have a isSync call and why must the validators constantly be build? Arent those the same for a run of eclipse?

johan


Back to the top