Extra torrent handle piece and file functions - #8521
Conversation
|
are adding the following functions to
All of those can be implemented outside of libtorrent. I think you need a strong argument why it should be part of libtorrent in order to include it. I would prefer to land new features like these either in
|
Due to the code performing synchronous and asynchronous calls, which the methods to do so are private in the
Sure, I can change the target branch of this PR.
I know, but this library also provides methods which either return or modify a vector, examples of it are the |
|
you prefer to have the loop live in libtorrent instead of your client code. It sounds like you're saying it's for performance reasons, but it's not obvious. Do you have any measurements? disk I/O jobs being submitted individually is the case regardless. The disk I/O subsystem reads 16kiB blocks. Even if you move the loop into libtorrent, your client code would need to pipeline those requests, so I don't think you can get rid of all accounting on your side. I suppose requesting larger ranges obscures the problems that you have in the seams, because you'll have fewer of them. |
d78a891 to
bec4827
Compare
bec4827 to
4447309
Compare
This PR contains extra functionality regarding piece and file ranges. My gst-libtorrent module requests many pieces at time for buffering during multimedia streaming, but having to do so requires loop boilerplate which could be simplified. I could write my own methods, but part of them cannot be done in my project so I have no to implement them in this library. This could be handy for other projects as well.