ByteArray的数据存储在哪里?

时间:2011-10-29 04:30:26

标签: flash actionscript-3 flex actionscript

我正在使用URLStream下载大文件并在移动应用上本地保存。为此,我需要将下载的字节存储在ByteArray:

private function handleStreamProgress(event : ProgressEvent) : void {
  if ( urlStream.bytesAvailable == 0 ) return;
  if ( urlStream.connected ) {
    urlStream.readBytes(byteArray, byteArray.length);
    fileStream.writeBytes(byteArray, bytesOffset);
    bytesOffset = byteArray.length;
  } 
}

下载文件中的这些字节是否存储在内存中? (但是,探测器不会显示任何过多的内存消耗,而是......)

在存储每个字节序列后,我应该清理byteArray吗?

1 个答案:

答案 0 :(得分:0)

除非您明确将数据推送到磁盘,否则数据将存储在内存中。

我不确定清理byteArray 是什么意思。 ByteArray作为一个整体包含组成数据的字节。您当然可以将阵列拆开并在某个时间点将其合并,但数据本身必须保留在某个位置,以便下载的数据能够代表它实际上是什么。