我正在開發WebGL和移動WebGL應用程序。我經常使用硬刷新來測試WebGL實現的結果。視圖嘗試後,我得到的錯誤:如何釋放和垃圾收集WebGL上下文?
Error: WebGL: Exceeded 16 live WebGL contexts for this principal, losing the least recently used one.
這似乎不是一個新鮮的開始瀏覽器,但多次刷新網站後,。我猜WebGL上下文沒有完成,發佈,銷燬,清理,正確釋放。
我該怎麼做?
Khronos工作組創建了一個測試套件,用於釋放和垃圾在這裏收集的WebGL方面:https://www.khronos.org/registry/webgl/sdk/tests/conformance/context/context-creation-and-destruction.html(注:這可能會崩潰您的瀏覽器!)
測試貫穿與PASS
和TEST COMPLETE
,所以basicly測試未檢測任何問題。但是,打開JavaScript控制檯,它讀取33個實例:
Error: WebGL: Exceeded 16 live WebGL contexts for this principal, losing the least recently used one.
這是WebGL如何由瀏覽器處理的錯誤?或者我做錯了什麼?我從來沒有想過要釋放任何WebGL上下文。
我使用Firefox Developer Edition 48.0a2和Firefox 46.0.1。
如何釋放和垃圾收集WebGL上下文?