C# 如何理解LogSource的AutoFlush属性
我有一个类别“MyCategory”,它的AutoFlush属性为true,跟踪侦听器为平面文件跟踪侦听器。我创建了一个日志条目,并用category编写它。日志将成功写入文件C# 如何理解LogSource的AutoFlush属性,c#,.net,enterprise-library,C#,.net,Enterprise Library,我有一个类别“MyCategory”,它的AutoFlush属性为true,跟踪侦听器为平面文件跟踪侦听器。我创建了一个日志条目,并用category编写它。日志将成功写入文件 如果我将AutoFlush属性更改为false并写入一个日志条目,我无法理解为什么LogSource不将其写入文件。(当AutoFlush=false时)在流a()中,强制流清除其对参考底图对象的缓冲区。e、 一个文件!因此,在每个日志条目之后,日志记录器将自动刷新,以便您可以立即在文件中看到结果 在以下情况下,流将清除
如果我将AutoFlush属性更改为false并写入一个日志条目,我无法理解为什么LogSource不将其写入文件。(当AutoFlush=false时)在流a()中,强制流清除其对参考底图对象的缓冲区。e、 一个文件!因此,在每个日志条目之后,日志记录器将自动刷新,以便您可以立即在文件中看到结果 在以下情况下,流将清除其缓冲区:
- 缓冲区已满
- 这条小溪正在排水
AutoFlush=false的缓冲。它只会在缓冲区已满时,调用Flush或LogSource dispose进行写入
AutoFlush=true
在每次插入日志项后调用Flush()
,以强制写入文件。没有缓冲,如果你想这么说的话。这意味着,您将立即看到每个条目,x条目之后除外 在流a()中,强制流清除其对参考底图对象的缓冲区。e、 一个文件!因此,在每个日志条目之后,日志记录器将自动刷新,以便您可以立即在文件中看到结果
在以下情况下,流将清除其缓冲区:
- 缓冲区已满
- 这条小溪正在排水
添加:
LogSource保留一个日志条目列表,容量为x。如果日志项列表>x=>写入文件。这就是使用AutoFlush=false的缓冲。它只会在缓冲区已满时,调用Flush或LogSource dispose进行写入
AutoFlush=true
在每次插入日志项后调用Flush()
,以强制写入文件。没有缓冲,如果你想这么说的话。这意味着,您将立即看到每个条目,x条目之后除外 我不明白为什么它没有被LogSource写入文件(当AutoFlush=false时)。请解释一下。谢谢。我又添加了一些信息。希望有帮助。我不明白为什么它不是由LogSource写入文件的(当AutoFlush=false时)。请解释一下。谢谢。我又添加了一些信息。希望能有帮助。