1
ysc3839 2017-09-20 10:54:40 +08:00
“很多下载”?能否举个例子?
|
2
fishcat OP @ysc3839 比较多 https://github.com/search?utf8=%E2%9C%93&q=%E4%B8%8B%E8%BD%BD&type=Repositories 可以自己看一下,我看了几个都是有临时目录的
|
3
yonka 2017-09-20 11:03:31 +08:00
1. 下载都需要写文件,内存 buf 不够
2. 写临时文件然后下载完 copy/move 过去(可能)可以保证文件完整性 3. 直接写文件的话,需要区分“是否完整文件”,比较麻烦 4. 迅雷等一般是在当前目录下存储“临时文件”,不过是特殊的临时文件,额外记录了进度信息等。 因为迅雷等要支持断点续传,如果写在临时目录,续传时可能就被清理了。 |
5
murmur 2017-09-20 11:07:35 +08:00
下载的如果真的是临时文件,那么用户随便运行个垃圾清理软件就可以把这些东西删掉了
另外 temp 目录一般不需要权限吧 安装的时候和用户要一次提权就可以了 另外国内软件现在用 temp 的应该一半一半了,360 系的反正都不咋用临时目录,下载的安装包、驱动什么都可以拷出来 |
6
nifury 2017-09-20 11:09:09 +08:00
LZ 说的是像 IDM 那样分块下载再合并的么? IDM 这样做好像是因为多线程下载操作同一个文件的话容易出现问题(我真不知道为何容易出现问题)
|
8
laucenmi 2017-09-20 11:54:52 +08:00
零时文件,或者藏大姐姐
|
9
owenliang 2017-09-20 13:18:50 +08:00
mv 可以保障原子性。
|