异步开始写入结束写入 Unity (NET 2.0)

本文关键字:NET Unity 开始 结束 异步 | 更新日期: 2023-09-27 18:33:42

我正在尝试找出以异步方式将一些字节(在本例中为记录的.wav文件)写入硬盘的正确方法。

正在使用unity,所以据我所知,我仅限于使用Filestream.BeginWrite和EndWrite。

到目前为止,我

得到的似乎正在工作,但我担心,由于我缺乏异步调用的经验,我在完成后没有正确关闭文件流,从而泄漏内存。

我像这样开始写作:

object t = null;
fileStream.BeginWrite(bytesData, 0, bytesData.Length, new  AsyncCallback(EndWriteCallback),  t); 

然后我有一个EndWriteCallback,它有这个:

public static void EndWriteCallback(IAsyncResult e){
    FileStream fs = e.AsyncState as FileStream;
    fs.EndWrite(e);
}

这就够了吗?同样,它似乎工作正常,但我觉得我必须在某个地方调用 FileStream.Close()。

提前致谢

异步开始写入结束写入 Unity (NET 2.0)

正如@ChristophKn上面的评论中提到的,fs.dispose()可能是释放资源的最佳方式。