How to release an instance of custom class that extends class ‘LocalInspectionTool’ when switch to another project?


Hello, I'm trying  to promote the performance of  my custom plugin. I developed my own code inspection via the extension point 'localInspection'. When I use visualVM to observe JVM activites, I found that the instance of Inspection class will not be recycled by full GC While the previous project has been replaced by current one(open another project by 'this window' option). The configuration of plugin is shown bellow:

<localInspection implementationClass="com.example.myInspection"

If there is resolution to make inspection class instance can be collected by GC when I close a project(Multiple projects opened at the same time)?

Thank you!

评论操作 固定链接


The platform and dependency injection framework are responsible for managing extension instances, and it sounds strange that you try to improve its performance. Why would you need this? What is the issue?