andrewhayden / folderslice

Automatically exported from code.google.com/p/folderslice
0 stars 0 forks source link

Gadget becomes unresponsive when it hits large cache of difficult files #8

Closed GoogleCodeExporter closed 9 years ago

GoogleCodeExporter commented 9 years ago
What steps will reproduce the problem?
1. Attempt to scan an entire drive
2. When you hit the user files, generally the gadget slows to a crawl and
there is heavy disk i/o

What is the expected output? What do you see instead?
It is ok that the gadget is slow when accessing these files - this is a
price paid by the OS-level APIs as is obvious from the spike in disk and
cpu I/O.  However it would be nice if the gadget could detect this lag
spike and throw some extra yields in so that the progress indicator
continues to update and the cancel button responds.

Please use labels and text to provide additional information.
It should be possible to do this by checking to see if we've spent a "long
time" since the last sleep interval during traversal.  If so we should
yield immediately.

This is high priority since the cancel button fails to work (indeed, all
events are suspended) until things calm down.

Original issue reported on code.google.com by andrew.h...@gmail.com on 9 Dec 2007 at 10:32

GoogleCodeExporter commented 9 years ago
I've made the change in the development branch.  Should be available in 0.9.4.  
This
version should be *much* more responsive.  The new algorithm is based on a max
"analysis" interval, followed by a minimum sleep interval.  Currently they are
hard-coded, but a config screen could provide some options (e.g., low speed, 
medium
speed, high speed, highest speed).

Original comment by andrew.h...@gmail.com on 11 Dec 2007 at 8:13

GoogleCodeExporter commented 9 years ago
Released into 0.9.4.  I'll track the adding of configuration options separately.

Original comment by andrew.h...@gmail.com on 12 Dec 2007 at 6:35