为什么我完成的种子(有时)没有写入磁盘?

Technobabel

我尝试用electronic和webtorrent编写一个小的torrent客户端。乍一看一切都很好,但是有时当torrent下载完成时,结果文件并未写入磁盘。

我的项目是通过SimulatedGREG / electron-vue样板设置的。

这是我的洪流客户端类的代码:

const WebTorrent = require('webtorrent');
const client = new WebTorrent();  
export default class TorrentClient {
  download (downloadInfo) {
    console.log('download torrent from magnet link:', downloadInfo.magnetLink);

    let torrent = client.add(downloadInfo.infoHash);
    torrent.on('download', function (bytes) {
      console.log('just downloaded: ' + bytes);
      console.log('total downloaded: ' + torrent.downloaded);
      console.log('download speed: ' + torrent.downloadSpeed);
      console.log('progress: ' + torrent.progress);
    });
    torrent.on('done', function () {
      console.log('done...');
    });
  }
}
Technobabel

更新:我解决了问题。

调试了webtorrent使用的fs-chunk-store后,我发现在将数据写入磁盘之前就抛出了错误。当调用fs.mkdir为下载目标创建新路径时发生错误(ENOENT:无此类文件或目录,mkdir'path / to / folder')。没有回调函数作为参数,该错误将不会输出到stdout。

我现在的解决方案是使用fs-chunk-store的自定义实现,该实现允许递归创建文件夹。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

为什么我的解析任务有时无法完成?

来自分类Dev

为什么我有时会出错而有时却没有呢?

来自分类Dev

为什么当我的IDE没有时,javac会抛出编译错误?

来自分类Dev

为什么有时我们快速使用-> void作为完成处理程序,但有时却不使用呢?

来自分类Dev

没有更多的磁盘空间,没有任何东西吞噬我的磁盘。为什么?

来自分类Dev

为什么有时我的UIBarButton粗体,有时又薄

来自分类Dev

为什么我的磁盘没有通过NFS共享?

来自分类Dev

为什么我得到角色声明有时有命名空间有时没有命名空间

来自分类Dev

为什么`find`有时会找到我的文件,有时却找不到

来自分类Dev

为什么我有时会得到嵌入的属性有时不会?

来自分类Dev

为什么我对文件执行 fwrite() 时没有写入文件?

来自分类Dev

为什么gulp没有完成我的任务就退出了?

来自分类Dev

为什么我的代码调试没有完成?

来自分类Dev

为什么我的视频栏没有完成?

来自分类Dev

为什么我的代码没有完成 Sound::release() 调用?

来自分类Dev

为什么我没有完成 POSTMAN 的 PUT 请求?

来自分类Dev

为什么有时带有bar或hist的条没有边界?

来自分类Dev

为什么CUDA 8.0(有时)有错误的内存访问权限,而7.5没有?

来自分类Dev

为什么没有显示SCSI磁盘?

来自分类Dev

为什么ng-model有时会预先填充而有时却没有?

来自分类Dev

为什么终端自动完成有时不建议`services'命令使用任何内容?

来自分类Dev

为什么终端自动完成有时不建议`services'命令使用任何内容?

来自分类Dev

为什么自动完成有时在 python IDE 中不起作用

来自分类Dev

为什么即使在任何地方都没有使用MediaPlayer的情况下,为什么有时仍会在logcat中看到“ MediaPlayer最终完成而没有发布”?

来自分类Dev

为什么在没有进程报告写入的情况下,磁盘的写入速率高达几GB / s?

来自分类Dev

有时将错误的字节写入磁盘。硬件有问题吗?

来自分类Dev

即使我没有未读的电子邮件,为什么Outlook任务栏信封图标有时仍保持活动状态?

来自分类Dev

当我在办公桌上震惊时,为什么有时PC会掉电?

来自分类Dev

为什么我启动android时没有显示日期?

Related 相关文章

  1. 1

    为什么我的解析任务有时无法完成?

  2. 2

    为什么我有时会出错而有时却没有呢?

  3. 3

    为什么当我的IDE没有时,javac会抛出编译错误?

  4. 4

    为什么有时我们快速使用-> void作为完成处理程序,但有时却不使用呢?

  5. 5

    没有更多的磁盘空间,没有任何东西吞噬我的磁盘。为什么?

  6. 6

    为什么有时我的UIBarButton粗体,有时又薄

  7. 7

    为什么我的磁盘没有通过NFS共享?

  8. 8

    为什么我得到角色声明有时有命名空间有时没有命名空间

  9. 9

    为什么`find`有时会找到我的文件,有时却找不到

  10. 10

    为什么我有时会得到嵌入的属性有时不会?

  11. 11

    为什么我对文件执行 fwrite() 时没有写入文件?

  12. 12

    为什么gulp没有完成我的任务就退出了?

  13. 13

    为什么我的代码调试没有完成?

  14. 14

    为什么我的视频栏没有完成?

  15. 15

    为什么我的代码没有完成 Sound::release() 调用?

  16. 16

    为什么我没有完成 POSTMAN 的 PUT 请求?

  17. 17

    为什么有时带有bar或hist的条没有边界?

  18. 18

    为什么CUDA 8.0(有时)有错误的内存访问权限,而7.5没有?

  19. 19

    为什么没有显示SCSI磁盘?

  20. 20

    为什么ng-model有时会预先填充而有时却没有?

  21. 21

    为什么终端自动完成有时不建议`services'命令使用任何内容?

  22. 22

    为什么终端自动完成有时不建议`services'命令使用任何内容?

  23. 23

    为什么自动完成有时在 python IDE 中不起作用

  24. 24

    为什么即使在任何地方都没有使用MediaPlayer的情况下,为什么有时仍会在logcat中看到“ MediaPlayer最终完成而没有发布”?

  25. 25

    为什么在没有进程报告写入的情况下,磁盘的写入速率高达几GB / s?

  26. 26

    有时将错误的字节写入磁盘。硬件有问题吗?

  27. 27

    即使我没有未读的电子邮件,为什么Outlook任务栏信封图标有时仍保持活动状态?

  28. 28

    当我在办公桌上震惊时,为什么有时PC会掉电?

  29. 29

    为什么我启动android时没有显示日期?

热门标签

归档