Bug 84912 [KeyBindings] performance: Lots of garbage when editor gains/loses focus
build i0208 Not sure where to enter this report. Adding Tod and John to CC as they will be involve in performance work this release. I have the Platform/UI heap usage plug-in installed. I notice that when I switch focus from the editor to a view (e.g. Outline), the heap usage increases by a meg or 2. Putting focus back to the editor does the same. This happens with both the text editor and more prominatly with the Java editor. It doesn't matter if the view is docked or is a fast view.
bundles/org.eclipse.jface/src/org/eclipse/jface/bindings/BindingManager.java
if (prefixTable == null) {
			recomputeBindings();
		}
		return Collections.unmodifiableMap(prefixTable);
	}
	/**
	 * <p>
	 * Gets the scheme with the given identifier. If the scheme does not already
	 * exist, then a new (undefined) scheme is created with that identifier.
	 * This guarantees that schemes will remain unique.
	 * </p>
	 * <p>
	 * This method completes in amortized <code>O(1)</code>.
	 * </p>
	 * 
	 * @param identifier
	 *            The identifier for the scheme to retrieve; must not be
	 *            <code>null</code>.
	 * @return A scheme with the given identifier.
	 */
	public final Scheme getScheme(final String identifier) {
		if (identifier == null) {
			throw new NullPointerException(
					"Cannot get a scheme with a null identifier"); 
		}
		Scheme scheme = (Scheme) schemesById.get(identifier);
		if (scheme == null) {
			scheme = new Scheme(identifier);
			schemesById.put(identifier, scheme);
			scheme.addSchemeListener(this);