Review Request: Speed limit in ftp kio slave

Tushar Mehta mehtatus at gmail.com
Wed Aug 10 17:15:27 BST 2011



> On Aug. 10, 2011, 1:07 p.m., David Faure wrote:
> > kioslave/ftp/speedController.h, line 3
> > <http://git.reviewboard.kde.org/r/102267/diff/1/?file=31277#file31277line3>
> >
> >     This seems to be your own code, the copyright is yours, not mine :)

Hey :) This is my first patch to the KDE and in excitement I forgot to change this :) I will correct it sure :)


> On Aug. 10, 2011, 1:07 p.m., David Faure wrote:
> > kioslave/ftp/ftp.cpp, line 1867
> > <http://git.reviewboard.kde.org/r/102267/diff/1/?file=31276#file31276line1867>
> >
> >     What does the magic number represent?
> >     
> >     Ah, 1 second? Would be worth a comment.

When I started writing code, I was not using this wait. But what happened is that, the while loop is taking time in microseconds and the code which is calculating how many bytes to read is expecting elapsed time in millisecond. Because of this almost every time elapsed time is coming as zero.(as time granularity is in millisecond) and equation is return 0. So I thought to have some delay in ftp code.

If we have a timer which is having granularity in microsecond then I can update the equation and can observe how code behaves with out any wait.

I tried to find out about this type of timer and got to now that in Qt 4.7 it got introduced.(I am not sure about the qt version but in the latest one). It will be great if you can suggest me something about this.

I wanted to have a opinion of developers so I put this magic number :) Let me know where I am doing mistake regarding this thought.


- Tushar


-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
http://git.reviewboard.kde.org/r/102267/#review5593
-----------------------------------------------------------


On Aug. 9, 2011, 7:16 p.m., Tushar Mehta wrote:
> 
> -----------------------------------------------------------
> This is an automatically generated e-mail. To reply, visit:
> http://git.reviewboard.kde.org/r/102267/
> -----------------------------------------------------------
> 
> (Updated Aug. 9, 2011, 7:16 p.m.)
> 
> 
> Review request for kdelibs.
> 
> 
> Summary
> -------
> 
> - This patch contains the basic code which will put the limit on download speed of the ftp data transfer.
> - It is looking for "speed-limit" meta-data for deciding how much speed control is required.
> - If this meta-data is not found, code will work as it was before and no speed control related code will come into picture.
> - This patch is the most basic one which I have testing on my system and to the extent it is controlling the speed.
> - Lets say if speed limit is 30 KBps then mostly will get the avg speed around 30 to 35 KBps.
> - I am using QTime for measuring time elapsed between two socket read call and its precision is in millisecond. Looping is taking place in microsecond and thats why I am getting almost all the time 0 as time elapsed in between two calls.
> - To solve the above problem usleep is introduced to make it sync with the timer.
> 
> 
> Diffs
> -----
> 
>   kioslave/ftp/CMakeLists.txt e080b02 
>   kioslave/ftp/ftp.h 0bd375b 
>   kioslave/ftp/ftp.cpp 655524a 
>   kioslave/ftp/speedController.h PRE-CREATION 
>   kioslave/ftp/speedController.cpp PRE-CREATION 
> 
> Diff: http://git.reviewboard.kde.org/r/102267/diff
> 
> 
> Testing
> -------
> 
> 
> Thanks,
> 
> Tushar
> 
>

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.kde.org/pipermail/kde-core-devel/attachments/20110810/06ec8cc2/attachment.htm>


More information about the kde-core-devel mailing list