例如,在本地网络中,当Adobe Air从本地服务器(\\Server\storage\
)读取文件并且网络将关闭一秒钟时,Air会占用大量内存并且增加到1GB (正常内存使用量为100 kb或更低)。
只是从不稳定的网络中使用File('file path on local server');
读取文件会导致此错误。
有没有人在项目中看到过这个?
private function init() : void
{
file = new File("\\Server\dragracing\results.txt");
fileStream = new FileStream();
fileStream.addEventListener( Event.COMPLETE, fileComplete );
fileStream.openAsync( file, FileMode.READ );
}
private function fileComplete( event : Event ):void
{
fileContents = fileStream.readMultiByte( fileStream.bytesAvailable, ISO_CS );
.....
}
]]>
答案 0 :(得分:0)
您是否尝试在fileComplete方法中关闭FileStream?致电close method以实现这一目标。
私有函数fileComplete(event:Event):void { fileContents = fileStream.readMultiByte(fileStream.bytesAvailable,ISO_CS); fileStream.close(); ..... }
此外,根据您的代码,您似乎并未真正从文件中读取信息。从文件;所以不清楚完整的方法是否会执行。在使用FileStream类时,有很多方法用于读取信息。