180bpm

www 사용시 절대 메모리 해제가 되지 않는 문제 본문

Develop/Unity

www 사용시 절대 메모리 해제가 되지 않는 문제

powdersnow 2020. 2. 7. 12:28

이제는 deprecated된 기능이지만 유니티 5때는 오히려 unitywebrequest가 experimental 이었어서 www가 손에 익었다.

streamingAsset 폴더 접근 안되는것도 있고..

 

streamingAsset 에 있는 100mb 가량 되는 파일을 www를 이용해 접근한 뒤 메모리가 해제 되지 않는 문제가 생겼다.

찾아보니 유니티 4때부터 있는 아주 오래된 버그인데 여태 고치지 않았다더라..

 

AOS에서 대략 50mb 이상의 파일을 www 이용해 접근시 gc, 네이티브 코드등으로도 메모리 해제가 되지 않음.

그럼 옛날엔 큰 파일을 어떻게 부른거지..

 

 

 

22.04.18

유니티 2019에서 저때랑 비슷하게 또 똑같이 95메가쯤 되는 파일을 불러와야 했다.

이번엔 UnityWebRequest 썼는데......이거도 죽어도 안내려가더라

 

https://forum.unity.com/threads/uwp-memory-leak-when-downloading-large-files.765122/

 

UWP: Memory leak when downloading large files

The following code run on UWP will raise the memory by 100MB every iteration until the application crashes. What am I missing here? We're seeing...

forum.unity.com

 

 

계속 골머리를 앓다가 DownloadHandlerFile 로 적용해봤는데 파일 사이즈만큼 내려갔다.

 

https://docs.unity3d.com/kr/2018.4/Manual/UnityWebRequest-CreatingDownloadHandlers.html

 

DownloadHandler 생성 - Unity 매뉴얼

다음과 같은 몇 가지 DownloadHandler 타입이 있습니다.

docs.unity3d.com

 

Comments