问题背景
Unity版本:2021.3.16
在用Unity做一个文字识别的应用,方案是用UnityWebRequest把图片发送给web api,但在发送一定时间后Unity会报错。
(具体堆栈信息可以通过添加com.unity.entities包后开启堆栈追踪查看)
搜索试了不同的方法,后来在Unity Forum中一个帖子里找到了实际的原因和解决方案。
做了一些总结,该报错根据具体情况,可以尝试从以下几个方向解决:
报错原因1:UnityWebRequest没有释放。
解决方案:使用using把UnityWebRequest框起来,或者在使用完后调用Dispose()。
using(UnityWebRequest www=new UnityWebRequest(webUrl))
{
// ....
yield return www.SendWebRequest();
// ....
}
报错原因2: DownloadHandler或UploadHandler没有释放。
解决方案:设置两者随WebRequest一起释放,或者手动Dispose()。
using(UnityWebReque