Затмение 4 ед. Медленное. CSS Engine вызывается слишком часто (Windows) - PullRequest
0 голосов
/ 18 октября 2019

У меня есть приложение RPC eclipse 4, которое очень медленно работает в Windows. На MacOs проблема, кажется, не существует. Когда я переключаю фокус с одного окна на другое, требуется около 3 секунд, прежде чем курсор начнет мигать. Представление имеет около 500 элементов управления (текстовые поля, метки, кнопки), но большинство из них скрыты.

Мне не разрешено вставлять код, но я провел там профилирование. Я обнаружил, что CSS-движок eclipse 4 выполняет много вызовов ОС при повторном рендеринге. Это не имеет смысла для меня, так как мы вообще не используем CSS в проекте.

Это вызовы, которые происходят более 100 раз:

{
    Method='"Composite.java:111 org.eclipse.swt.widgets.Display.getControl(long)', 
    Time All Calls together in ms ='369', 
    Count invoked calls='235820', 
}
{
    Method='"Display.java:1619 org.eclipse.swt.internal.win32.OS.GetProp(long, long)', 
    Time All Calls together in ms ='299', 
    Count invoked calls='235820', 
}
{
    Method='"OS.java:2828 org.eclipse.swt.internal.win32.OS.GetPropW(long, long)', 
    Time All Calls together in ms ='249', 
    Count invoked calls='235820', 
}
{
    Method='"Composite.java:111 org.eclipse.swt.widgets.Display.getControl(long)', 
    Time All Calls together in ms ='345', 
    Count invoked calls='235325', 
}
{
    Method='"Display.java:1619 org.eclipse.swt.internal.win32.OS.GetProp(long, long)', 
    Time All Calls together in ms ='293', 
    Count invoked calls='235325', 
}
{
    Method='"OS.java:2828 org.eclipse.swt.internal.win32.OS.GetPropW(long, long)', 
    Time All Calls together in ms ='245', 
    Count invoked calls='235325', 
}
{
    Method='"Composite.java:111 org.eclipse.swt.widgets.Display.getControl(long)', 
    Time All Calls together in ms ='0', 
    Count invoked calls='498', 
}
{
    Method='"AbstractCSSEngine.java:438 org.eclipse.e4.ui.css.swt.dom.CompositeElement.getLength()', 
    Time All Calls together in ms ='411', 
    Count invoked calls='497', 
}
{
    Method='"CompositeElement.java:34 org.eclipse.swt.widgets.Composite.getChildren()', 
    Time All Calls together in ms ='411', 
    Count invoked calls='497', 
}
{
    Method='"Composite.java:490 org.eclipse.swt.widgets.Composite._getChildren()', 
    Time All Calls together in ms ='411', 
    Count invoked calls='497', 
}
{
    Method='"Composite.java:489 org.eclipse.swt.widgets.Widget.checkWidget()', 
    Time All Calls together in ms ='0', 
    Count invoked calls='497', 
}
{
    Method='"CompositeElement.java:34 org.eclipse.e4.ui.css.swt.dom.CompositeElement.getComposite()', 
    Time All Calls together in ms ='0', 
    Count invoked calls='497', 
}
{
    Method='"AbstractCSSEngine.java:439 org.eclipse.e4.ui.css.swt.dom.CompositeElement.item(int)', 
    Time All Calls together in ms ='387', 
    Count invoked calls='495', 
}
{
    Method='"CompositeElement.java:39 org.eclipse.swt.widgets.Composite.getChildren()', 
    Time All Calls together in ms ='385', 
    Count invoked calls='495', 
}
{
    Method='"Composite.java:490 org.eclipse.swt.widgets.Composite._getChildren()', 
    Time All Calls together in ms ='385', 
    Count invoked calls='495', 
}
{
    Method='"Composite.java:489 org.eclipse.swt.widgets.Widget.checkWidget()', 
    Time All Calls together in ms ='0', 
    Count invoked calls='495', 
}
{
    Method='"CompositeElement.java:40 org.eclipse.e4.ui.css.core.dom.ElementAdapter.getElement(Object)', 
    Time All Calls together in ms ='1', 
    Count invoked calls='495', 
}
{
    Method='"ElementAdapter.java:376 org.eclipse.e4.ui.css.swt.engine.AbstractCSSSWTEngineImpl.getElement(Object)', 
    Time All Calls together in ms ='1', 
    Count invoked calls='495', 
}
{
    Method='"AbstractCSSSWTEngineImpl.java:98 org.eclipse.e4.ui.css.core.impl.engine.AbstractCSSEngine.getElement(Object)', 
    Time All Calls together in ms ='0', 
    Count invoked calls='495', 
}
{
    Method='"AbstractCSSEngine.java:884 org.eclipse.e4.ui.css.core.impl.engine.AbstractCSSEngine.getCSSElementContext(Object)', 
    Time All Calls together in ms ='0', 
    Count invoked calls='495', 
}
{
    Method='"AbstractCSSEngine.java:946 java.util.HashMap.get(Object)', 
    Time All Calls together in ms ='0', 
    Count invoked calls='495', 
}
{
    Method='"HashMap.java:557 java.util.HashMap.getNode(int, Object)', 
    Time All Calls together in ms ='0', 
    Count invoked calls='495', 
}
{
    Method='"HashMap.java:557 java.util.HashMap.hash(Object)', 
    Time All Calls together in ms ='0', 
    Count invoked calls='495', 
}
{
    Method='"AbstractCSSEngine.java:945 org.eclipse.e4.ui.css.core.impl.engine.AbstractCSSEngine.getNativeWidget(Object)', 
    Time All Calls together in ms ='0', 
    Count invoked calls='495', 
}
{
    Method='"AbstractCSSEngine.java:946 org.eclipse.e4.ui.css.core.impl.engine.AbstractCSSEngine.getElementsContext()', 
    Time All Calls together in ms ='0', 
    Count invoked calls='495', 
}
{
    Method='"AbstractCSSEngine.java:886 org.eclipse.e4.ui.css.core.impl.engine.CSSElementContextImpl.elementMustBeRefreshed(IElementProvider)', 
    Time All Calls together in ms ='0', 
    Count invoked calls='495', 
}
{
    Method='"AbstractCSSSWTEngineImpl.java:97 org.eclipse.e4.ui.css.swt.engine.AbstractCSSSWTEngineImpl.isStylable(Widget)', 
    Time All Calls together in ms ='0', 
    Count invoked calls='495', 
}
{
    Method='"AbstractCSSSWTEngineImpl.java:118 org.eclipse.swt.widgets.Widget.getData(String)', 
    Time All Calls together in ms ='0', 
    Count invoked calls='495', 
}
{
    Method='"Widget.java:568 org.eclipse.swt.widgets.Widget.checkWidget()', 
    Time All Calls together in ms ='0', 
    Count invoked calls='495', 
}
{
    Method='"AbstractCSSSWTEngineImpl.java:117 java.lang.Boolean.equals(Object)', 
    Time All Calls together in ms ='0', 
    Count invoked calls='495', 
}
{
    Method='"CompositeElement.java:39 org.eclipse.e4.ui.css.swt.dom.CompositeElement.getComposite()', 
    Time All Calls together in ms ='0', 
    Count invoked calls='495', 
}
{
    Method='"AbstractCSSEngine.java:439 org.eclipse.e4.ui.css.core.impl.engine.AbstractCSSEngine.applyStyles(Object, boolean)', 
    Time All Calls together in ms ='9', 
    Count invoked calls='495', 
}
{
    Method='"AbstractCSSEngine.java:363 org.eclipse.e4.ui.css.core.impl.engine.AbstractCSSEngine.applyStyles(Object, boolean, boolean)', 
    Time All Calls together in ms ='9', 
    Count invoked calls='495', 
}
{
    Method='"AbstractCSSEngine.java:371 org.eclipse.e4.ui.css.core.impl.engine.AbstractCSSEngine.isVisible(Element)', 
    Time All Calls together in ms ='2', 
    Count invoked calls='495', 
}
{
    Method='"AbstractCSSEngine.java:456 org.eclipse.e4.ui.css.swt.dom.ControlElement.getParentNode()', 
    Time All Calls together in ms ='1', 
    Count invoked calls='495', 
}
{
    Method='"ControlElement.java:136 org.eclipse.e4.ui.css.core.dom.ElementAdapter.getElement(Object)', 
    Time All Calls together in ms ='1', 
    Count invoked calls='495', 
}
{
    Method='"ElementAdapter.java:376 org.eclipse.e4.ui.css.swt.engine.AbstractCSSSWTEngineImpl.getElement(Object)', 
    Time All Calls together in ms ='1', 
    Count invoked calls='495', 
}
{
    Method='"AbstractCSSSWTEngineImpl.java:98 org.eclipse.e4.ui.css.core.impl.engine.AbstractCSSEngine.getElement(Object)', 
    Time All Calls together in ms ='0', 
    Count invoked calls='495', 
}
{
    Method='"AbstractCSSEngine.java:884 org.eclipse.e4.ui.css.core.impl.engine.AbstractCSSEngine.getCSSElementContext(Object)', 
    Time All Calls together in ms ='0', 
    Count invoked calls='495', 
}
{
    Method='"AbstractCSSEngine.java:946 java.util.HashMap.get(Object)', 
    Time All Calls together in ms ='0', 
    Count invoked calls='495', 
}
{
    Method='"HashMap.java:557 java.util.HashMap.getNode(int, Object)', 
    Time All Calls together in ms ='0', 
    Count invoked calls='495', 
}
{
    Method='"HashMap.java:557 java.util.HashMap.hash(Object)', 
    Time All Calls together in ms ='0', 
    Count invoked calls='495', 
}
{
    Method='"AbstractCSSEngine.java:946 org.eclipse.e4.ui.css.core.impl.engine.AbstractCSSEngine.getElementsContext()', 
    Time All Calls together in ms ='0', 
    Count invoked calls='495', 
}
{
    Method='"AbstractCSSEngine.java:945 org.eclipse.e4.ui.css.core.impl.engine.AbstractCSSEngine.getNativeWidget(Object)', 
    Time All Calls together in ms ='0', 
    Count invoked calls='495', 
}
{
    Method='"AbstractCSSEngine.java:886 org.eclipse.e4.ui.css.core.impl.engine.CSSElementContextImpl.elementMustBeRefreshed(IElementProvider)', 
    Time All Calls together in ms ='0', 
    Count invoked calls='495', 
}
{
    Method='"AbstractCSSSWTEngineImpl.java:97 org.eclipse.e4.ui.css.swt.engine.AbstractCSSSWTEngineImpl.isStylable(Widget)', 
    Time All Calls together in ms ='0', 
    Count invoked calls='495', 
}
{
    Method='"AbstractCSSSWTEngineImpl.java:118 org.eclipse.swt.widgets.Widget.getData(String)', 
    Time All Calls together in ms ='0', 
    Count invoked calls='495', 
}
{
    Method='"Widget.java:568 org.eclipse.swt.widgets.Widget.checkWidget()', 
    Time All Calls together in ms ='0', 
    Count invoked calls='495', 
}
{
    Method='"AbstractCSSSWTEngineImpl.java:117 java.lang.Boolean.equals(Object)', 
    Time All Calls together in ms ='0', 
    Count invoked calls='495', 
}
{
    Method='"ControlElement.java:134 org.eclipse.swt.widgets.Control.getParent()', 
    Time All Calls together in ms ='0', 
    Count invoked calls='495', 
}
{
    Method='"Control.java:1534 org.eclipse.swt.widgets.Widget.checkWidget()', 
    Time All Calls together in ms ='0', 
    Count invoked calls='495', 
}
{
    Method='"ControlElement.java:133 org.eclipse.e4.ui.css.swt.dom.ControlElement.getControl()', 
    Time All Calls together in ms ='0', 
    Count invoked calls='495', 
}
{
    Method='"AbstractCSSEngine.java:378 org.eclipse.e4.ui.css.core.impl.dom.ViewCSSImpl.getComputedStyle(Element, String)', 
    Time All Calls together in ms ='0', 
    Count invoked calls='495', 
}
{
    Method='"ViewCSSImpl.java:66 java.util.ArrayList.<init>()', 
    Time All Calls together in ms ='0', 
    Count invoked calls='495', 
}
{
    Method='"ArrayList.java:165 java.util.AbstractList.<init>()', 
    Time All Calls together in ms ='0', 
    Count invoked calls='495', 
}
{
    Method='"AbstractList.java:76 java.util.AbstractCollection.<init>()', 
    Time All Calls together in ms ='0', 
    Count invoked calls='495', 
}
{
    Method='"ViewCSSImpl.java:77 org.eclipse.e4.ui.css.core.impl.dom.ViewCSSImpl.getComputedStyle(List, Element, String)', 
    Time All Calls together in ms ='0', 
    Count invoked calls='495', 
}
{
    Method='"ViewCSSImpl.java:64 org.eclipse.e4.ui.css.core.impl.dom.StyleSheetListImpl.getLength()', 
    Time All Calls together in ms ='0', 
    Count invoked calls='495', 
}
{
    Method='"AbstractCSSEngine.java:426 org.eclipse.e4.ui.css.core.impl.engine.AbstractCSSEngine.applyInlineStyle(Object, boolean)', 
    Time All Calls together in ms ='0', 
    Count invoked calls='495', 
}
{
    Method='"AbstractCSSEngine.java:630 org.eclipse.e4.ui.css.swt.dom.WidgetElement.getCSSStyle()', 
    Time All Calls together in ms ='0', 
    Count invoked calls='495', 
}
{
    Method='"WidgetElement.java:282 org.eclipse.swt.widgets.Widget.getData(String)', 
    Time All Calls together in ms ='0', 
    Count invoked calls='495', 
}
{
    Method='"Widget.java:568 org.eclipse.swt.widgets.Widget.checkWidget()', 
    Time All Calls together in ms ='0', 
    Count invoked calls='495', 
}
{
    Method='"WidgetElement.java:280 org.eclipse.e4.ui.css.swt.dom.WidgetElement.getWidget()', 
    Time All Calls together in ms ='0', 
    Count invoked calls='495', 
}
{
    Method='"AbstractCSSEngine.java:626 org.eclipse.e4.ui.css.swt.engine.AbstractCSSSWTEngineImpl.getElement(Object)', 
    Time All Calls together in ms ='0', 
    Count invoked calls='495', 
}
{
    Method='"AbstractCSSEngine.java:392 org.eclipse.e4.ui.css.core.impl.engine.AbstractCSSEngine.getStaticPseudoInstances(Element)', 
    Time All Calls together in ms ='0', 
    Count invoked calls='495', 
}
{
    Method='"AbstractCSSEngine.java:515 org.eclipse.e4.ui.css.core.dom.ElementAdapter.getStaticPseudoInstances()', 
    Time All Calls together in ms ='0', 
    Count invoked calls='495', 
}
{
    Method='"AbstractCSSEngine.java:369 org.eclipse.e4.ui.css.swt.engine.AbstractCSSSWTEngineImpl.getElement(Object)', 
    Time All Calls together in ms ='0', 
    Count invoked calls='495', 
}
{
    Method='"AbstractCSSEngine.java:441 org.eclipse.e4.ui.css.core.impl.engine.AbstractCSSEngine.onStylesAppliedToChildNodes(Element, NodeList)', 
    Time All Calls together in ms ='0', 
    Count invoked calls='495', 
}
{
    Method='"Display.java:1619 org.eclipse.swt.internal.win32.OS.GetProp(long, long)', 
    Time All Calls together in ms ='0', 
    Count invoked calls='474', 
}
{
    Method='"OS.java:2828 org.eclipse.swt.internal.win32.OS.GetPropW(long, long)', 
    Time All Calls together in ms ='0', 
    Count invoked calls='474', 
}
{
    Method='"PartRenderingEngine.java:1121 org.eclipse.swt.widgets.Display.readAndDispatch()', 
    Time All Calls together in ms ='5408', 
    Count invoked calls='444', 
}
{
    Method='"Display.java:3819 org.eclipse.swt.internal.win32.OS.PeekMessage(MSG, long, int, int, int)', 
    Time All Calls together in ms ='5309', 
    Count invoked calls='444', 
}
{
    Method='"OS.java:3144 org.eclipse.swt.internal.win32.OS.PeekMessageW(MSG, long, int, int, int)', 
    Time All Calls together in ms ='5309', 
    Count invoked calls='444', 
}
{
    Method='"Display.java:3813 org.eclipse.swt.widgets.Display.checkDevice()', 
    Time All Calls together in ms ='0', 
    Count invoked calls='444', 
}
{
    Method='"Display.java:3816 org.eclipse.swt.widgets.Display.runSkin()', 
    Time All Calls together in ms ='0', 
    Count invoked calls='444', 
}
{
    Method='"Display.java:3817 org.eclipse.swt.widgets.Display.runDeferredLayouts()', 
    Time All Calls together in ms ='0', 
    Count invoked calls='444', 
}
{
    Method='"Display.java:3815 org.eclipse.swt.widgets.Display.drawMenuBars()', 
    Time All Calls together in ms ='0', 
    Count invoked calls='444', 
}
{
    Method='"Display.java:3818 org.eclipse.swt.widgets.Display.runPopups()', 
    Time All Calls together in ms ='0', 
    Count invoked calls='444', 
}
{
    Method='"PartRenderingEngine.java:1118 org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine.someAreVisible(List)', 
    Time All Calls together in ms ='0', 
    Count invoked calls='444', 
}
{
    Method='"PartRenderingEngine.java:1119 org.eclipse.swt.graphics.Device.isDisposed()', 
    Time All Calls together in ms ='0', 
    Count invoked calls='444', 
}
{
    Method='"PartRenderingEngine.java:1119 org.eclipse.e4.ui.model.application.impl.ApplicationImpl.getChildren()', 
    Time All Calls together in ms ='0', 
    Count invoked calls='444', 
}
{
    Method='"OS.java (native) org.eclipse.swt.widgets.Display.windowProc(long, long, long, long)', 
    Time All Calls together in ms ='5273', 
    Count invoked calls='364', 
}
{
    Method='"Composite.java:111 org.eclipse.swt.widgets.Display.getControl(long)', 
    Time All Calls together in ms ='0', 
    Count invoked calls='324', 
}
{
    Method='"Display.java:1619 org.eclipse.swt.internal.win32.OS.GetProp(long, long)', 
    Time All Calls together in ms ='0', 
    Count invoked calls='300', 
}
{
    Method='"OS.java:2828 org.eclipse.swt.internal.win32.OS.GetPropW(long, long)', 
    Time All Calls together in ms ='0', 
    Count invoked calls='300', 
}
{
    Method='"AbstractCSSEngine.java:438 org.eclipse.e4.ui.css.swt.dom.CompositeElement.getLength()', 
    Time All Calls together in ms ='1', 
    Count invoked calls='273', 
}
{
    Method='"CompositeElement.java:34 org.eclipse.swt.widgets.Composite.getChildren()', 
    Time All Calls together in ms ='1', 
    Count invoked calls='273', 
}
{
    Method='"Composite.java:490 org.eclipse.swt.widgets.Composite._getChildren()', 
    Time All Calls together in ms ='0', 
    Count invoked calls='273', 
}
{
    Method='"Composite.java:489 org.eclipse.swt.widgets.Widget.checkWidget()', 
    Time All Calls together in ms ='0', 
    Count invoked calls='273', 
}
{
    Method='"CompositeElement.java:34 org.eclipse.e4.ui.css.swt.dom.CompositeElement.getComposite()', 
    Time All Calls together in ms ='0', 
    Count invoked calls='273', 
}
{
    Method='"OS.java (native) org.eclipse.swt.widgets.Display.windowProc(long, long, long, long)', 
    Time All Calls together in ms ='79', 
    Count invoked calls='245', 
}
{
    Method='"Display.java:3822 org.eclipse.swt.internal.win32.OS.DispatchMessage(MSG)', 
    Time All Calls together in ms ='90', 
    Count invoked calls='241', 
}
{
    Method='"OS.java:2552 org.eclipse.swt.internal.win32.OS.DispatchMessageW(MSG)', 
    Time All Calls together in ms ='90', 
    Count invoked calls='241', 
}
{
    Method='"Display.java:3821 org.eclipse.swt.internal.win32.OS.TranslateMessage(MSG)', 
    Time All Calls together in ms ='0', 
    Count invoked calls='241', 
}
{
    Method='"Display.java:3824 org.eclipse.swt.widgets.Display.runDeferredEvents()', 
    Time All Calls together in ms ='0', 
    Count invoked calls='241', 
}
{
    Method='"Display.java:3820 org.eclipse.swt.widgets.Display.filterMessage(MSG)', 
    Time All Calls together in ms ='0', 
    Count invoked calls='241', 
}
{
    Method='"Display.java:1633 org.eclipse.swt.widgets.Combo.checkHandle(long)', 
    Time All Calls together in ms ='0', 
    Count invoked calls='213', 
}
{
    Method='"Display.java:5110 org.eclipse.swt.widgets.Control.windowProc(long, int, long, long)', 
    Time All Calls together in ms ='43', 
    Count invoked calls='209', 
}
{
    Method='"Display.java:5114 org.eclipse.swt.internal.win32.OS.GetProp(long, long)', 
    Time All Calls together in ms ='3', 
    Count invoked calls='204', 
}
{
    Method='"Display.java:3827 org.eclipse.swt.widgets.Display.runAsyncMessages(boolean)', 
    Time All Calls together in ms ='1', 
    Count invoked calls='202', 
}
{
    Method='"Display.java:3827 org.eclipse.swt.graphics.Device.isDisposed()', 
    Time All Calls together in ms ='0', 
    Count invoked calls='202', 
}
{
    Method='"PartRenderingEngine.java:1126 org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine$4$1.eventLoopIdle(Display)', 
    Time All Calls together in ms ='2120', 
    Count invoked calls='201', 
}
{
    Method='"PartRenderingEngine.java:1122 org.eclipse.e4.core.internal.contexts.EclipseContext.processWaiting()', 
    Time All Calls together in ms ='5', 
    Count invoked calls='201', 
}
{
    Method='"AbstractCSSEngine.java:439 org.eclipse.e4.ui.css.core.impl.engine.AbstractCSSEngine.applyStyles(Object, boolean)', 
    Time All Calls together in ms ='2', 
    Count invoked calls='174', 
}
{
    Method='"AbstractCSSEngine.java:363 org.eclipse.e4.ui.css.core.impl.engine.AbstractCSSEngine.applyStyles(Object, boolean, boolean)', 
    Time All Calls together in ms ='2', 
    Count invoked calls='174', 
}
{
    Method='"AbstractCSSEngine.java:371 org.eclipse.e4.ui.css.core.impl.engine.AbstractCSSEngine.isVisible(Element)', 
    Time All Calls together in ms ='0', 
    Count invoked calls='174', 
}
{
    Method='"AbstractCSSEngine.java:456 org.eclipse.e4.ui.css.swt.dom.ControlElement.getParentNode()', 
    Time All Calls together in ms ='0', 
    Count invoked calls='174', 
}
{
    Method='"ControlElement.java:136 org.eclipse.e4.ui.css.core.dom.ElementAdapter.getElement(Object)', 
    Time All Calls together in ms ='0', 
    Count invoked calls='174', 
}
{
    Method='"ElementAdapter.java:376 org.eclipse.e4.ui.css.swt.engine.AbstractCSSSWTEngineImpl.getElement(Object)', 
    Time All Calls together in ms ='0', 
    Count invoked calls='174', 
}
{
    Method='"AbstractCSSSWTEngineImpl.java:98 org.eclipse.e4.ui.css.core.impl.engine.AbstractCSSEngine.getElement(Object)', 
    Time All Calls together in ms ='0', 
    Count invoked calls='174', 
}
{
    Method='"AbstractCSSEngine.java:884 org.eclipse.e4.ui.css.core.impl.engine.AbstractCSSEngine.getCSSElementContext(Object)', 
    Time All Calls together in ms ='0', 
    Count invoked calls='174', 
}
{
    Method='"AbstractCSSEngine.java:946 java.util.HashMap.get(Object)', 
    Time All Calls together in ms ='0', 
    Count invoked calls='174', 
}
{
    Method='"HashMap.java:557 java.util.HashMap.getNode(int, Object)', 
    Time All Calls together in ms ='0', 
    Count invoked calls='174', 
}
{
    Method='"HashMap.java:557 java.util.HashMap.hash(Object)', 
    Time All Calls together in ms ='0', 
    Count invoked calls='174', 
}
{
    Method='"AbstractCSSEngine.java:945 org.eclipse.e4.ui.css.core.impl.engine.AbstractCSSEngine.getNativeWidget(Object)', 
    Time All Calls together in ms ='0', 
    Count invoked calls='174', 
}
{
    Method='"AbstractCSSEngine.java:946 org.eclipse.e4.ui.css.core.impl.engine.AbstractCSSEngine.getElementsContext()', 
    Time All Calls together in ms ='0', 
    Count invoked calls='174', 
}
{
    Method='"AbstractCSSEngine.java:886 org.eclipse.e4.ui.css.core.impl.engine.CSSElementContextImpl.elementMustBeRefreshed(IElementProvider)', 
    Time All Calls together in ms ='0', 
    Count invoked calls='174', 
}
{
    Method='"AbstractCSSSWTEngineImpl.java:97 org.eclipse.e4.ui.css.swt.engine.AbstractCSSSWTEngineImpl.isStylable(Widget)', 
    Time All Calls together in ms ='0', 
    Count invoked calls='174', 
}
{
    Method='"AbstractCSSSWTEngineImpl.java:118 org.eclipse.swt.widgets.Widget.getData(String)', 
    Time All Calls together in ms ='0', 
    Count invoked calls='174', 
}
{
    Method='"Widget.java:568 org.eclipse.swt.widgets.Widget.checkWidget()', 
    Time All Calls together in ms ='0', 
    Count invoked calls='174', 
}
{
    Method='"AbstractCSSSWTEngineImpl.java:117 java.lang.Boolean.equals(Object)', 
    Time All Calls together in ms ='0', 
    Count invoked calls='174', 
}
{
    Method='"ControlElement.java:134 org.eclipse.swt.widgets.Control.getParent()', 
    Time All Calls together in ms ='0', 
    Count invoked calls='174', 
}
{
    Method='"Control.java:1534 org.eclipse.swt.widgets.Widget.checkWidget()', 
    Time All Calls together in ms ='0', 
    Count invoked calls='174', 
}
{
    Method='"ControlElement.java:133 org.eclipse.e4.ui.css.swt.dom.ControlElement.getControl()', 
    Time All Calls together in ms ='0', 
    Count invoked calls='174', 
}
{
    Method='"AbstractCSSEngine.java:378 org.eclipse.e4.ui.css.core.impl.dom.ViewCSSImpl.getComputedStyle(Element, String)', 
    Time All Calls together in ms ='0', 
    Count invoked calls='174', 
}
{
    Method='"ViewCSSImpl.java:77 org.eclipse.e4.ui.css.core.impl.dom.ViewCSSImpl.getComputedStyle(List, Element, String)', 
    Time All Calls together in ms ='0', 
    Count invoked calls='174', 
}
{
    Method='"ViewCSSImpl.java:66 java.util.ArrayList.<init>()', 
    Time All Calls together in ms ='0', 
    Count invoked calls='174', 
}
{
    Method='"ArrayList.java:165 java.util.AbstractList.<init>()', 
    Time All Calls together in ms ='0', 
    Count invoked calls='174', 
}
{
    Method='"AbstractList.java:76 java.util.AbstractCollection.<init>()', 
    Time All Calls together in ms ='0', 
    Count invoked calls='174', 
}
{
    Method='"ViewCSSImpl.java:64 org.eclipse.e4.ui.css.core.impl.dom.StyleSheetListImpl.getLength()', 
    Time All Calls together in ms ='0', 
    Count invoked calls='174', 
}
{
    Method='"AbstractCSSEngine.java:426 org.eclipse.e4.ui.css.core.impl.engine.AbstractCSSEngine.applyInlineStyle(Object, boolean)', 
    Time All Calls together in ms ='0', 
    Count invoked calls='174', 
}
{
    Method='"AbstractCSSEngine.java:630 org.eclipse.e4.ui.css.swt.dom.WidgetElement.getCSSStyle()', 
    Time All Calls together in ms ='0', 
    Count invoked calls='174', 
}
{
    Method='"WidgetElement.java:282 org.eclipse.swt.widgets.Widget.getData(String)', 
    Time All Calls together in ms ='0', 
    Count invoked calls='174', 
}
{
    Method='"Widget.java:568 org.eclipse.swt.widgets.Widget.checkWidget()', 
    Time All Calls together in ms ='0', 
    Count invoked calls='174', 
}
{
    Method='"WidgetElement.java:280 org.eclipse.e4.ui.css.swt.dom.WidgetElement.getWidget()', 
    Time All Calls together in ms ='0', 
    Count invoked calls='174', 
}
{
    Method='"AbstractCSSEngine.java:626 org.eclipse.e4.ui.css.swt.engine.AbstractCSSSWTEngineImpl.getElement(Object)', 
    Time All Calls together in ms ='0', 
    Count invoked calls='174', 
}
{
    Method='"AbstractCSSEngine.java:441 org.eclipse.e4.ui.css.core.impl.engine.AbstractCSSEngine.onStylesAppliedToChildNodes(Element, NodeList)', 
    Time All Calls together in ms ='0', 
    Count invoked calls='174', 
}
{
    Method='"AbstractCSSEngine.java:392 org.eclipse.e4.ui.css.core.impl.engine.AbstractCSSEngine.getStaticPseudoInstances(Element)', 
    Time All Calls together in ms ='0', 
    Count invoked calls='174', 
}
{
    Method='"AbstractCSSEngine.java:515 org.eclipse.e4.ui.css.core.dom.ElementAdapter.getStaticPseudoInstances()', 
    Time All Calls together in ms ='0', 
    Count invoked calls='174', 
}
{
    Method='"AbstractCSSEngine.java:369 org.eclipse.e4.ui.css.swt.engine.AbstractCSSSWTEngineImpl.getElement(Object)', 
    Time All Calls together in ms ='0', 
    Count invoked calls='174', 
}
{
    Method='"AbstractCSSEngine.java:439 org.eclipse.e4.ui.css.swt.dom.CompositeElement.item(int)', 
    Time All Calls together in ms ='1', 
    Count invoked calls='174', 
}
{
    Method='"CompositeElement.java:39 org.eclipse.swt.widgets.Composite.getChildren()', 
    Time All Calls together in ms ='0', 
    Count invoked calls='174', 
}
{
    Method='"Composite.java:490 org.eclipse.swt.widgets.Composite._getChildren()', 
    Time All Calls together in ms ='0', 
    Count invoked calls='174', 
}
{
    Method='"Composite.java:489 org.eclipse.swt.widgets.Widget.checkWidget()', 
    Time All Calls together in ms ='0', 
    Count invoked calls='174', 
}
{
    Method='"CompositeElement.java:40 org.eclipse.e4.ui.css.core.dom.ElementAdapter.getElement(Object)', 
    Time All Calls together in ms ='0', 
    Count invoked calls='174', 
}
{
    Method='"ElementAdapter.java:376 org.eclipse.e4.ui.css.swt.engine.AbstractCSSSWTEngineImpl.getElement(Object)', 
    Time All Calls together in ms ='0', 
    Count invoked calls='174', 
}
{
    Method='"AbstractCSSSWTEngineImpl.java:98 org.eclipse.e4.ui.css.core.impl.engine.AbstractCSSEngine.getElement(Object)', 
    Time All Calls together in ms ='0', 
    Count invoked calls='174', 
}
{
    Method='"AbstractCSSEngine.java:884 org.eclipse.e4.ui.css.core.impl.engine.AbstractCSSEngine.getCSSElementContext(Object)', 
    Time All Calls together in ms ='0', 
    Count invoked calls='174', 
}
{
    Method='"AbstractCSSEngine.java:946 java.util.HashMap.get(Object)', 
    Time All Calls together in ms ='0', 
    Count invoked calls='174', 
}
{
    Method='"HashMap.java:557 java.util.HashMap.getNode(int, Object)', 
    Time All Calls together in ms ='0', 
    Count invoked calls='174', 
}
{
    Method='"HashMap.java:557 java.util.HashMap.hash(Object)', 
    Time All Calls together in ms ='0', 
    Count invoked calls='174', 
}
{
    Method='"AbstractCSSEngine.java:945 org.eclipse.e4.ui.css.core.impl.engine.AbstractCSSEngine.getNativeWidget(Object)', 
    Time All Calls together in ms ='0', 
    Count invoked calls='174', 
}
{
    Method='"AbstractCSSEngine.java:946 org.eclipse.e4.ui.css.core.impl.engine.AbstractCSSEngine.getElementsContext()', 
    Time All Calls together in ms ='0', 
    Count invoked calls='174', 
}
{
    Method='"AbstractCSSEngine.java:886 org.eclipse.e4.ui.css.core.impl.engine.CSSElementContextImpl.elementMustBeRefreshed(IElementProvider)', 
    Time All Calls together in ms ='0', 
    Count invoked calls='174', 
}

Как вы можете видеть, такие вещи, как OS.java:2828 org.eclipse.swt.internal.win32.OS.GetPropW(long, long), вызываются более 230 000 раз.

Вопросы:

  1. Можно ли полностью отключить движок CSS?
  2. Кто-нибудь знает, что я, вероятно, делаю неправильно?
...