[Bug 218597] refresh of progress bar is unnecessary frequent

bugzilla at redhat.com bugzilla at redhat.com
Fri Apr 4 13:46:17 UTC 2008


Please do not reply directly to this email. All additional
comments should be made in the comments box of this bug report.

Summary: refresh of progress bar is unnecessary frequent


https://bugzilla.redhat.com/show_bug.cgi?id=218597


jkubin at redhat.com changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
  Status Whiteboard| bzcl34nup                  |bzcl34nup
               Flag|                            |needinfo?




------- Additional Comments From jkubin at redhat.com  2008-04-04 09:46 EST -------
*Sigh* :-( , here is a testcase - I've tested it on RHEL5 running on my scrap:
(RHEL5 will be living longer than Fedora)

$ dd if=/dev/zero of=zero count=2
$ for i in {0..9};do for j in {0..999};do cp zero $i.$j.0;done;done

1) ... copy files to different directory with 'cp' ...
2) delete them (because of influence cache).
3) ... copy files to different directory with 'mc' ...
4) ... copy files to different directory with 'cp' ...
5) compare resulting time

My results:
$ time cp *.0 cp/

real    0m0.862s
user    0m0.130s
sys     0m0.567s

The same operation through mc takes 4.0s

4/0.563 = 7.10479573712255772646

And it means, that graphics stuff slows down copy of 10002 files more than
7-times on my local machine.
I can't imagine to use mc on congested line.

It hampers copying/deleting and overal performance of mc.
For example, why not to refresh progress bar fourtimes per second at maximum?
Most users don't want exact feedback, they _only_want_to_know_ that something
happens ... (machine is alive, not frozen)

My very first naive idea:
...
  timerWakeUp = 1;

  while(copyInProgress){

    copyBlockOfFile();

    if(timerWakeUp){
      refreshProgressBar();
      refreshPercentage();
      refreshNameOfProgram();
      timerWakeUp = 0;
    }
    else{
      /*
       * copied names of files will be thrown out
       * (they will not be displayed)
       *
       */
    }
  }
...

void timerHndl()
{
  timerWakeUp = 1;
}


-- 
Configure bugmail: https://bugzilla.redhat.com/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are on the CC list for the bug, or are watching someone who is.




More information about the fedora-triage-list mailing list