fixed crashing bug when destructing session
This commit is contained in:
@@ -348,6 +348,9 @@ want to download.</li>
|
|||||||
It uses Boost.Thread, Boost.Filesystem, Boost.Date_time and various other
|
It uses Boost.Thread, Boost.Filesystem, Boost.Date_time and various other
|
||||||
boost libraries as well as <a class="reference" href="http://www.zlib.org">zlib</a> (shipped) and <a class="reference" href="http://asio.sf.net">asio</a> (shipped). At least version
|
boost libraries as well as <a class="reference" href="http://www.zlib.org">zlib</a> (shipped) and <a class="reference" href="http://asio.sf.net">asio</a> (shipped). At least version
|
||||||
1.33.1 of boost is required.</p>
|
1.33.1 of boost is required.</p>
|
||||||
|
<p>Since libtorrent uses asio, it will take full advantage of high performance
|
||||||
|
network APIs on the most popular platforms. I/O completion ports on windows,
|
||||||
|
epoll on linux and kqueue on MacOS X and BSD.</p>
|
||||||
<p>libtorrent has been successfully compiled and tested on:</p>
|
<p>libtorrent has been successfully compiled and tested on:</p>
|
||||||
<blockquote>
|
<blockquote>
|
||||||
<ul class="simple">
|
<ul class="simple">
|
||||||
@@ -367,6 +370,10 @@ boost libraries as well as <a class="reference" href="http://www.zlib.org">zlib<
|
|||||||
</ul>
|
</ul>
|
||||||
</blockquote>
|
</blockquote>
|
||||||
<p>libtorrent is released under the <a class="reference" href="http://www.opensource.org/licenses/bsd-license.php">BSD-license</a>.</p>
|
<p>libtorrent is released under the <a class="reference" href="http://www.opensource.org/licenses/bsd-license.php">BSD-license</a>.</p>
|
||||||
|
<p>This means that you can use the library in your project without having to
|
||||||
|
release its source code. The only requirement is that you give credit
|
||||||
|
to the author of the library by including the libtorrent licence in your
|
||||||
|
software or documentation.</p>
|
||||||
</div>
|
</div>
|
||||||
<div class="section">
|
<div class="section">
|
||||||
<h1><a id="downloading-and-building" name="downloading-and-building">downloading and building</a></h1>
|
<h1><a id="downloading-and-building" name="downloading-and-building">downloading and building</a></h1>
|
||||||
@@ -2274,7 +2281,7 @@ the threshold is 7, all pieces which 7 or more peers have, will be downloaded
|
|||||||
in index order.</p>
|
in index order.</p>
|
||||||
<p><tt class="docutils literal"><span class="pre">max_allowed_in_request_queue</span></tt> is the number of outstanding block requests
|
<p><tt class="docutils literal"><span class="pre">max_allowed_in_request_queue</span></tt> is the number of outstanding block requests
|
||||||
a peer is allowed to queue up in the client. If a peer sends more requests
|
a peer is allowed to queue up in the client. If a peer sends more requests
|
||||||
than this (before the first one has been sent) the last request will be
|
than this (before the first one has been handled) the last request will be
|
||||||
dropped. The higher this is, the faster upload speeds the client can get to a
|
dropped. The higher this is, the faster upload speeds the client can get to a
|
||||||
single peer.</p>
|
single peer.</p>
|
||||||
<p><tt class="docutils literal"><span class="pre">max_out_request_queue</span></tt> is the maximum number of outstanding requests to
|
<p><tt class="docutils literal"><span class="pre">max_out_request_queue</span></tt> is the maximum number of outstanding requests to
|
||||||
@@ -2282,10 +2289,11 @@ send to a peer. This limit takes precedence over <tt class="docutils literal"><s
|
|||||||
no matter the download speed, the number of outstanding requests will never
|
no matter the download speed, the number of outstanding requests will never
|
||||||
exceed this limit.</p>
|
exceed this limit.</p>
|
||||||
<p><tt class="docutils literal"><span class="pre">whole_pieces_threshold</span></tt> is a limit in seconds. if a whole piece can be
|
<p><tt class="docutils literal"><span class="pre">whole_pieces_threshold</span></tt> is a limit in seconds. if a whole piece can be
|
||||||
downloaded in this number of seconds, or less, the peer_connection will prefer
|
downloaded in at least this number of seconds from a specific peer, the
|
||||||
to request whole pieces at a time from this peer. The benefit of this is to
|
peer_connection will prefer requesting whole pieces at a time from this peer.
|
||||||
better utilize disk caches by doing localized accesses and also to make it
|
The benefit of this is to better utilize disk caches by doing localized
|
||||||
easier to identify bad peers if a piece fails the hash check.</p>
|
accesses and also to make it easier to identify bad peers if a piece fails
|
||||||
|
the hash check.</p>
|
||||||
</div>
|
</div>
|
||||||
<div class="section">
|
<div class="section">
|
||||||
<h1><a id="ip-filter" name="ip-filter">ip_filter</a></h1>
|
<h1><a id="ip-filter" name="ip-filter">ip_filter</a></h1>
|
||||||
|
@@ -70,7 +70,6 @@ __ http://www.getright.com/seedtorrent.html
|
|||||||
__ extension_protocol.html
|
__ extension_protocol.html
|
||||||
__ udp_tracker_protocol.html
|
__ udp_tracker_protocol.html
|
||||||
|
|
||||||
|
|
||||||
libtorrent is portable at least among Windows, MacOS X and other UNIX-systems.
|
libtorrent is portable at least among Windows, MacOS X and other UNIX-systems.
|
||||||
It uses Boost.Thread, Boost.Filesystem, Boost.Date_time and various other
|
It uses Boost.Thread, Boost.Filesystem, Boost.Date_time and various other
|
||||||
boost libraries as well as zlib_ (shipped) and asio_ (shipped). At least version
|
boost libraries as well as zlib_ (shipped) and asio_ (shipped). At least version
|
||||||
@@ -79,6 +78,10 @@ boost libraries as well as zlib_ (shipped) and asio_ (shipped). At least version
|
|||||||
.. _zlib: http://www.zlib.org
|
.. _zlib: http://www.zlib.org
|
||||||
.. _asio: http://asio.sf.net
|
.. _asio: http://asio.sf.net
|
||||||
|
|
||||||
|
Since libtorrent uses asio, it will take full advantage of high performance
|
||||||
|
network APIs on the most popular platforms. I/O completion ports on windows,
|
||||||
|
epoll on linux and kqueue on MacOS X and BSD.
|
||||||
|
|
||||||
libtorrent has been successfully compiled and tested on:
|
libtorrent has been successfully compiled and tested on:
|
||||||
|
|
||||||
* Windows 2000 vc7.1
|
* Windows 2000 vc7.1
|
||||||
@@ -97,6 +100,11 @@ libtorrent is released under the BSD-license_.
|
|||||||
|
|
||||||
.. _BSD-license: http://www.opensource.org/licenses/bsd-license.php
|
.. _BSD-license: http://www.opensource.org/licenses/bsd-license.php
|
||||||
|
|
||||||
|
This means that you can use the library in your project without having to
|
||||||
|
release its source code. The only requirement is that you give credit
|
||||||
|
to the author of the library by including the libtorrent licence in your
|
||||||
|
software or documentation.
|
||||||
|
|
||||||
|
|
||||||
downloading and building
|
downloading and building
|
||||||
========================
|
========================
|
||||||
@@ -2153,7 +2161,7 @@ in index order.
|
|||||||
|
|
||||||
``max_allowed_in_request_queue`` is the number of outstanding block requests
|
``max_allowed_in_request_queue`` is the number of outstanding block requests
|
||||||
a peer is allowed to queue up in the client. If a peer sends more requests
|
a peer is allowed to queue up in the client. If a peer sends more requests
|
||||||
than this (before the first one has been sent) the last request will be
|
than this (before the first one has been handled) the last request will be
|
||||||
dropped. The higher this is, the faster upload speeds the client can get to a
|
dropped. The higher this is, the faster upload speeds the client can get to a
|
||||||
single peer.
|
single peer.
|
||||||
|
|
||||||
@@ -2163,10 +2171,11 @@ no matter the download speed, the number of outstanding requests will never
|
|||||||
exceed this limit.
|
exceed this limit.
|
||||||
|
|
||||||
``whole_pieces_threshold`` is a limit in seconds. if a whole piece can be
|
``whole_pieces_threshold`` is a limit in seconds. if a whole piece can be
|
||||||
downloaded in this number of seconds, or less, the peer_connection will prefer
|
downloaded in at least this number of seconds from a specific peer, the
|
||||||
to request whole pieces at a time from this peer. The benefit of this is to
|
peer_connection will prefer requesting whole pieces at a time from this peer.
|
||||||
better utilize disk caches by doing localized accesses and also to make it
|
The benefit of this is to better utilize disk caches by doing localized
|
||||||
easier to identify bad peers if a piece fails the hash check.
|
accesses and also to make it easier to identify bad peers if a piece fails
|
||||||
|
the hash check.
|
||||||
|
|
||||||
|
|
||||||
ip_filter
|
ip_filter
|
||||||
|
@@ -208,6 +208,11 @@ namespace libtorrent
|
|||||||
boost::weak_ptr<torrent> find_torrent(const sha1_hash& info_hash);
|
boost::weak_ptr<torrent> find_torrent(const sha1_hash& info_hash);
|
||||||
peer_id const& get_peer_id() const { return m_peer_id; }
|
peer_id const& get_peer_id() const { return m_peer_id; }
|
||||||
|
|
||||||
|
// this is where all active sockets are stored.
|
||||||
|
// the selector can sleep while there's no activity on
|
||||||
|
// them
|
||||||
|
demuxer m_selector;
|
||||||
|
|
||||||
tracker_manager m_tracker_manager;
|
tracker_manager m_tracker_manager;
|
||||||
torrent_map m_torrents;
|
torrent_map m_torrents;
|
||||||
|
|
||||||
@@ -259,11 +264,6 @@ namespace libtorrent
|
|||||||
// interface to listen on
|
// interface to listen on
|
||||||
tcp::endpoint m_listen_interface;
|
tcp::endpoint m_listen_interface;
|
||||||
|
|
||||||
// this is where all active sockets are stored.
|
|
||||||
// the selector can sleep while there's no activity on
|
|
||||||
// them
|
|
||||||
demuxer m_selector;
|
|
||||||
|
|
||||||
boost::shared_ptr<socket_acceptor> m_listen_socket;
|
boost::shared_ptr<socket_acceptor> m_listen_socket;
|
||||||
|
|
||||||
// the entries in this array maps the
|
// the entries in this array maps the
|
||||||
|
Reference in New Issue
Block a user