2

我正在使用 libtorrent 将数据传输到 10k+ 个节点。这里我传输的数据非常小(大小为 10-50 mb)。我希望所有节点都将数据保存在内存中,直到所有其他节点完成下载以避免更多的磁盘 io 使用,然后在所有主机中完成下载后将数据刷新到磁盘。有什么办法吗?

4

1 回答 1

1

如果您将磁盘缓存(在 libtorrent 中)设置为足够大以容纳所有有效负载,它将保存在 RAM 中。

但是,没有办法防止数据在你去的时候被刷新。但是,刷新将发生在后台线程中,从不阻塞缓存命中请求。

每当一块完成时,它就会被刷新到磁盘。

于 2017-03-28T00:59:34.573 回答