Libtorrent 如何设置超时?

Posted

技术标签:

【中文标题】Libtorrent 如何设置超时?【英文标题】:Libtorrent How to set timeout? 【发布时间】:2015-02-09 03:57:44 【问题描述】:

我用add_magnet_uri获取信息,但是有些资源响应慢,应该用什么来设置总超时?

http://www.rasterbar.com/products/libtorrent/manual.html

:(我没有找到相关设置

params = 
            'save_path': '/home/sdht/data',
            'storage_mode': lt.storage_mode_sparse(),
            'paused': False,
            'auto_managed': True,
            'duplicate_is_error': True
        
handle = lt.add_magnet_uri(self.ses, link, params)
    while (not handle.has_metadata()):
        time.sleep(.1)

【问题讨论】:

【参考方案1】:

在 libtorrent 中下载失败的种子没有超时。您可以在 torrent 中查询添加时的时间戳,如果添加时间足够长,但仍未完成,则可以将其删除。

加载空闲的 torrent 也没有太多成本,因此您可能希望添加所有要并行解决的问题。

另外,您可能需要小心地将它们全部设置为 auto_managed: True,因为这样停滞的 torrent 可能会阻止新的 torrent 启动。如果您将 auto_managed 设置为 False,它们都将被强制启动。

【讨论】:

【参考方案2】:

地址:http://www.rasterbar.com/products/libtorrent/manual.html#session-settings

        sts.user_agent = "USA Global Download"
        sts.tracker_completion_timeout = 5
        sts.tracker_receive_timeout = 5
        sts.stop_tracker_timeout = 5
        sts.active_downloads = -1
        sts.active_seeds = -1
        sts.active_limit = -1
        sts.auto_scrape_min_interval = 5
        sts.udp_tracker_token_expiry = 120
        sts.min_announce_interval = 1
        sts.inactivity_timeout = 60
        sts.connection_speed = 10
        sts.allow_multiple_connections_per_ip = True
        sts.max_out_request_queue = 128
        sts.request_queue_size = 3
        sts.use_read_cache = False

【讨论】:

以上是关于Libtorrent 如何设置超时?的主要内容,如果未能解决你的问题,请参考以下文章

Libtorrent 设置枚举

如何使用 python-libtorrent 下载特定文件

Libtorrent set_settings 错误

如何防止 libtorrent 创建带有名称的文件夹?

如何使用 python-libtorrent 获取 torrent 的对等列表?

如何在 libtorrent 中应用代理?