在c#中编写文件时"使用"指令开销

Mar*_*rco 0 c# using-statement streamwriter

我需要在两个单独的文件中写两个日志:一个每秒写入530个字符30次,另一个每秒写入60个60次.我将保存将写入两个独立变量的数据,并分别写入n和m帧.要编写我使用的变量:

using (StreamWriter writer = new StreamWriter(newFileName, true))
Run Code Online (Sandbox Code Playgroud)

然后

writer.Write(data)
Run Code Online (Sandbox Code Playgroud)

现在......我知道使用"使用"的优点,但我想知道:它有开销吗?为什么不在代码的开头声明StreamWriter并在需要时使用它?

Tig*_*ran 6

好吧,如果你需要以这样的速度和频率编写数据,我建议不要使用using,因为using最后会关闭并处理流对象,所以在下一个请求时你需要重新初始化并重新打开stream,这需要花费.

所以只需打开它们就可以使用它.手动处理后.