-
Notifications
You must be signed in to change notification settings - Fork 32
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
播时长较长的视频发生memory issue #27
Comments
好的,当我有空闲时间时会跟进一下,不过你可以提供一些更详细一点的信息:
|
你好作者,我先描述下场景:
|
好的,感谢详细的回复,问题1和2我空的时候看一下。 问题3的话应该是你遗漏了一些追踪吧。
实际用到的时候会使用uniqueID从数据库获取相关信息,参考这里:
然后根据offset和其他信息从本地文件获取需要的数据,参考这里:
你可以再次确认一下这个逻辑是不是正常。 |
问题2已经修复,cancel的时候没有调用markAsFinished方法确实是个问题,之前在其他场景中有修复过,但是忘记同步到这个库里了。
你可以使用最新的master分支代码来测试你的问题是否正常,如果OK的话到时候我发布一个小版本上去 |
感谢及时的回复和跟进,按你描述的逻辑应该是没问题的。
由于我项目中有些定制化的需求,所以我切了个新分支加了些接口,现在不大方便切回去验证,实在不好意思😂
发自我的iPhone
…------------------ 原始邮件 ------------------
发件人: eroscai ***@***.***>
发送时间: 2022年7月2日 11:20
收件人: eroscai/SZAVPlayer ***@***.***>
抄送: justin ***@***.***>, Author ***@***.***>
主题: Re: [eroscai/SZAVPlayer] 播时长较长的视频发生memory issue (Issue #27)
问题2已经修复,cancel的时候没有调用markAsFinished方法确实是个问题,之前在其他场景中有修复过,但是忘记同步到这个库里了。
至于问题1里的dataLoader.cancel()方法调用cancelAllOperations方法来取消现有的全部operation的逻辑,我大概回忆了一下这样写的原因:
resourceLoader(_ : didCancel loadingRequest: )方法调用的时机我记得一般有两种情况
一种是用户触发了seekToTime方法,也就是产生了新的Range请求
一种是在不同iOS系统版本下dataRequest的触发逻辑会有不同表现,简单来说data请求开始时会有未预期的cancel回调,接着发来一个新的data请求
不管是针对上述两种情况还是其他cancel调用的情况,应该都可以理解为把现有请求取消掉,为即将触发的新的请求腾出网络资源应该是还算合理的做法
如果不做清理操作可能出现的一种情况是seekToTime等方法调用时会等待比较长的时间(之前其他的data请求占着网络资源)
你可以使用最新的master分支代码来测试你的问题是否正常,如果OK的话到时候我发布一个小版本上去
—
Reply to this email directly, view it on GitHub, or unsubscribe.
You are receiving this because you authored the thread.Message ID: ***@***.***>
|
播1小时以上的视频,内存很快就涨起来了
另外player销毁后,下载任务没有销毁,内存还是持续上涨。
The text was updated successfully, but these errors were encountered: