File.AppendAllText vs StreamWriter

Ren*_*shi 1 c# logging

我想创建一个日志文件来跟踪我的Application中的一些操作.在我的场景中,我想在一个会话中每分钟至少记录50次.目前我正在使用StremWriter来创建日志文件.

 public static StreamWriter InitializeStream(string path)
    {
        /*ensuring whether thread safe or not*/
        lock (mylock)
        {
            if (null == _stream)
            {
                var fileStream = new FileStream(path, FileMode.OpenOrCreate, FileAccess.ReadWrite);
                _stream = new StreamWriter(fileStream);                    

                return _stream;
            }
            return _stream;
        }
    }

//logging operation
StreamHandler.Log(path)
Run Code Online (Sandbox Code Playgroud)

仍然有点混淆选择AppendAllText或StreamWriter.而不是StreamWriter方式我可以直接使用AppendAllText获得优势吗?(性能)

ada*_*ost 6

不要AppendAllText()在循环StremWriter内部使用,因为它在内部使用,其中流对象将在每次迭代时被初始化和处理.