http://imagej.273.s1.nabble.com/Slowdown-when-calling-a-plugin-from-within-a-loop-tp3696849p3696850.html
prior to "run"ning the next file). I suspect that if you monitor the
This, of course, is all just a guess. Best luck,
> I've been using ImageJ for a few years now, but just wrote my first
> plugin. I just came across a strange issue that I don't really
> understand and was hoping someone might have some insight. I guess
> this is more of a Java question than an ImageJ question.
>
> My plugin just converts a batch of files from one format to another
> and is based around the DM3_Reader plugin
> <
http://rsb.info.nih.gov/ij/plugins/DM3_Reader.html> by Gregory
> Jefferis. I found that my plugin got progressively slower and slower
> when it was looping over a directory of images. The first image took
> about 1-2 seconds to convert, by the time it got to the seventh image,
> it was taking 30-40 seconds.
> Here is a simplification of what I was originally trying to do:
>
> public class myConverter1{
> // DM3_Reader extends ImagePlus
> private DM3_Reader myReader = new DM3_Reader();
>
> public void run(String args) {
> for(int i=0; i<filename.length; i++){
> myReader.run (filename(i));
>
> fileSaver = new FileSaver(myReader);
> fileSaver.saveAsTiff(outputFile);
> }
> }
> }
>
>
> This change fixes the problem, every image takes only 1-2 seconds to
> convert, but I don't really understand why:
>
> public class myConverter2{
> public void run(String args) {
> for(int i=0; i<filename.length; i++){
> // DM3_Reader extends ImagePlus
> DM3_Reader myReader = new DM3_Reader();
> myReader (filename)
>
> fileSaver = new FileSaver(myReader);
> fileSaver.saveAsTiff(outputFile);
> }
> }
> }
>
> The only significant change is that myReader now goes out of scope at
> the end of the for loop. I don't seeI don't see why this would have
> such a large effect on the processing time. Am I just being daft or
> can someone share some insight?
>
> --
> Eric Olson
> Postdoctoral Research Associate, University of Illinois at
> Urbana-Champaign
>
[hidden email], 217-244-2117 (voice), 217-244-2278 (fax)
>
>