我正在下载文件并将其本地存储在应用程序存储域中。由于某种原因,其中一个文件被air锁定了。这是我通过查看进程资源管理器找到的。
如果我清除浏览器缓存,文件永远不会被锁定,只有当它试图下载文件,但它存在于浏览器缓存中时,才会对该该死的文件进行空气锁定。
你能帮帮忙吗?
尼尔
发布于 2010-01-16 01:58:54
好了,我已经解决了这个问题。它与浏览器缓存文件没有任何关系,或者更确切地说,不是直接的。我重用了一个FileStream对象并异步下载文件。因此,在下载完每个文件之后,我可以使用fileStream.close()并开始下载下一个文件。
有时我会在close实际完成之前重新使用fileStream。正确的方法是向fileStream对象添加一个侦听器,然后在该对象关闭后继续。
例如:
fileStream.addEventListener(Event.CLOSE, checkCloseHandler);
fileStream.close();
private function checkCloseHandler(e:Event):void
{
trace("FileCacheProxy.checkCloseHandler(): " + file.url);
fileStream.removeEventListener(Event.CLOSE, checkCloseHandler);
resumeQueue();
}https://stackoverflow.com/questions/2073352
复制相似问题