Hi all,<br><br><blockquote style="margin: 0pt 0pt 0pt 0.8ex; border-left: 1px solid rgb(204, 204, 204); padding-left: 1ex;" class="gmail_quote">Barry is out today but I will investigate this afternoon and hopefully have a fix soon.<br>
</blockquote><br>I believe this issue is fixed in r3939. Please let me know if not.<br><br>-Curtis<br><br><br><div class="gmail_quote">On Wed, Sep 21, 2011 at 12:27 PM, Curtis Rueden <span dir="ltr"><<a href="mailto:ctrueden@wisc.edu">ctrueden@wisc.edu</a>></span> wrote:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex;">Hi Grant,<div class="im"><br><br><blockquote style="margin:0pt 0pt 0pt 0.8ex;border-left:1px solid rgb(204, 204, 204);padding-left:1ex" class="gmail_quote">
Anyone else seeing the CPU usage stuck at +12% ofter opening an image in IJ2? Or is it just me?<br></blockquote><blockquote style="margin:0pt 0pt 0pt 0.8ex;border-left:1px solid rgb(204, 204, 204);padding-left:1ex" class="gmail_quote">
(Related: has anyone tried profiling the app? I'm having trouble doing so in NetBeans... going to try VirtualVM next.)<br></blockquote>
<br></div>If you run ImageJ from the command line (see <a href="http://imagejdev.org/command-line" target="_blank">http://imagejdev.org/command-line</a>) then press Ctrl+Pause (Ctrl+\ on non-Windows platforms) from the command prompt, you will get a full stack trace for all threads, which will be enlightening as to the cause.<br>
<br>I just tested on my machine here and am seeing 100% CPU usage (of one CPU) on my system, after opening Blobs.<br><br>The stack trace reveals that there is a recursive loop going on with the options synchronization. Relevant portion is:<br>
<br> at imagej.event.EventService.publish(EventService.java:72)<br> at imagej.event.Events.publish(Events.java:61)<br> at imagej.ext.options.OptionsPlugin.run(OptionsPlugin.java:116)<br> at imagej.ext.plugin.PluginModule.run(PluginModule.java:163)<br>
at imagej.ext.options.OptionsService.setOption(OptionsService.java:178)<br> at imagej.ext.options.OptionsService.setOption(OptionsService.java:153)<br> at imagej.legacy.patches.PrefsMethods.set(PrefsMethods.java:90)<br>
at ij.Prefs.set(Prefs.java:455)<br> at ij.Prefs.set(Prefs.java:461)<br> at imagej.legacy.OptionsSynchronizer.arrowOptions(OptionsSynchronizer.java:171)<br> at imagej.legacy.OptionsSynchronizer.updateIJ1SettingsFromIJ2(OptionsSynchronizer.java:82)<br>
at imagej.legacy.LegacyService.updateIJ1Settings(LegacyService.java:143)<br> at imagej.legacy.LegacyService$2.onEvent(LegacyService.java:194)<br> at imagej.legacy.LegacyService$2.onEvent(LegacyService.java:190)<br>
at org.bushe.swing.event.ThreadSafeEventService.publish(ThreadSafeEventService.java:971)<br> at org.bushe.swing.event.ThreadSafeEventService.publish(ThreadSafeEventService.java:904)<br> at imagej.event.EventService.publish(EventService.java:72)<br>
at imagej.event.Events.publish(Events.java:61)<br> at imagej.ext.options.OptionsPlugin.run(OptionsPlugin.java:116)<br> at imagej.ext.plugin.PluginModule.run(PluginModule.java:163)<br> at imagej.ext.options.OptionsService.setOption(OptionsService.java:178)<br>
at imagej.ext.options.OptionsService.setOption(OptionsService.java:153)<br> at imagej.legacy.patches.PrefsMethods.set(PrefsMethods.java:90)<br> at ij.Prefs.set(Prefs.java:455)<br> at ij.Prefs.set(Prefs.java:461)<br>
at imagej.legacy.OptionsSynchronizer.arrowOptions(OptionsSynchronizer.java:171)<br> at imagej.legacy.OptionsSynchronizer.updateIJ1SettingsFromIJ2(OptionsSynchronizer.java:82)<br> at imagej.legacy.LegacyService.updateIJ1Settings(LegacyService.java:143)<br>
at imagej.legacy.LegacyService$2.onEvent(LegacyService.java:194)<br> at imagej.legacy.LegacyService$2.onEvent(LegacyService.java:190)<br> at org.bushe.swing.event.ThreadSafeEventService.publish(ThreadSafeEventService.java:971)<br>
<br>Barry is out today but I will investigate this afternoon and hopefully have a fix soon.<br><font color="#888888"><br>-Curtis<br><br>
</font></blockquote></div><br>