3.2.0
之前 Tiercel 3.0.0 版本已经针对批量操作进行大量优化,足以应付数百个下载任务批量操作的需求。但我万万没想到竟然有人会在手机端上同时下载成千上万的文件,显然这种做法是不正确的,手机的性能非常有限,就算是性能很好的电脑,也不应该这么做。正常来说如果同时下载的文件达到上百个的话,最好就把它们压缩成一个文件进行下载,节省大量的资源,这才是最优的做法。但既然有开发者发现 Tiercel 在批量操作时还是会产生性能方面的问题,那也证明了它还存在继续优化的空间,于是我再次对批量操作方面进行优化,达到了应付上万个下载任务批量操作的要求。但我还是再次强调,这种大量文件同时下载的做法是非常不合理的,对于 Tiercel 使用的常见问题和注意事项,请查看 常见问题
- 进一步提升批量操作的性能
- 减少内存占用
- 不再保留原始的
URLSessionDownloadTask
,如果下载任务出现错误,会保留response
- 对
error
和response
进行持久化 - 对
SessionManager
的download
和multiDownload
方法添加了回调 - 暴露
UnfairLock
和Protector<T>
,新增Debouncer
,方便开发者使用 - 优化各种状态回调的逻辑
- 优化代码逻辑
- 更新 Demo