以下はEclipse 3.7 RCPアプリケーションで動作します - テーブル行でクリックするとポップアップメニューがドロップされます。 ActionContributionItem
インスタンスのe4 RCPアプリケーション、ActionContributionItemメニューのリーク
private void hookContextMenu(TableViewer viewer) {
MenuManager menuMgr = new MenuManager("drillDownPopup");
menuMgr.setRemoveAllWhenShown(true);
menuMgr.addMenuListener(new IMenuListener() {
@Override
public void menuAboutToShow(IMenuManager manager) {
//.. add bunch of actions to IMenuManager
}
});
Menu menu = menuMgr.createContextMenu(viewer.getControl());
viewer.getControl().setMenu(menu);
getSite().registerContextMenu(menuMgr, viewer);
}
これはE4で実行(ネオン、最新のアップデート)はいずれも、それぞれいくつかの他のオブジェクトへの参照を保持している多くの項目があり、非常にかなりのリークを作成GC'edを取得していません。
e4で何か問題がありますか?
これはe4ではありません。 Eclipse 4.x互換モードのアプリケーションがあります。 –
OKです。 e4ターゲットで実行されているe3アプリです。あなたは漏れを止める方法を知っていますか? – Dima
このようなコードはEclipseのどこにでもあり、私はリークの報告は見ていません。これは、ほとんど変更されていないいくつかの領域の1つであるJFaceコードのほとんどすべてです。 –