如果我取消了我的一个项目中的这一行代码注释,并注释掉了后面的那个,我偶尔会得到异常&堆栈跟踪:
System.InvalidOperationException: Operation is not valid due to the current state of the object
at System.IO.StreamWriter.CheckState () [0x00000] in <filename unknown>:0
at System.IO.StreamWriter.WriteLineAsync (System.String value) [0x00000] in <filename unknown>:0
at System.IO.SynchronizedWriter.WriteLineAsync (System.String value) [0x00000] in <filename unknown>:0
at Gerty.Service+<PullJob>c__async1.MoveNext () [0x00000] in <filename unknown>:0
--- End of stack trace from previous location where exception was thrown ---
at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw () [0x00000] in <filename unknown>:0
at System.Runtime.CompilerServices.TaskAwaiter.GetResult () [0x00000] in <filename unknown>:0
at Gerty.Service+<Work>c__async0.MoveNext () [0x00000] in <filename unknown>:0 我想让我困惑的是,尽管等待声明,但我还是得到了这个例外。
发布于 2014-03-15 14:59:46
随着时间的推移,使用Console.Out进行调试信息最终会干扰您的程序。
在这篇文章中,我认为NLog是日志记录的最佳选择。特别是在异步应用程序中,由于它们的非阻塞API和非常简单的配置。
https://stackoverflow.com/questions/22424136
复制相似问题