本文整理汇总了C#中ILog.ErrorException方法的典型用法代码示例。如果您正苦于以下问题:C# ILog.ErrorException方法的具体用法?C# ILog.ErrorException怎么用?C# ILog.ErrorException使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类ILog
的用法示例。
在下文中一共展示了ILog.ErrorException方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。
示例1: ObservableSocket
/// <summary>
/// Initializes a new instance of the <see cref="ObservableSocket"/> class.
/// </summary>
/// <param name="tcpClient">The TCP client to wrap.</param>
protected ObservableSocket(TcpClient tcpClient)
{
Log = LogProvider.GetLogger(GetType());
this.tcpClient = tcpClient;
receiver = received
.GetConsumingEnumerable()
.ToObservable(TaskPoolScheduler.Default)
.Finally(
() =>
{
Log.Trace(() => "Buffer Read Observable Completed {0} chunks left.".Fmt(received.Count));
received.Dispose();
received = null;
});
readSubscription = Observable.Defer(
() =>
{
var stream = tcpClient.GetStream();
var buffer = SharedPools.ByteArray.Allocate();
return
Observable.FromAsync(() => stream.ReadAsync(buffer, 0, buffer.Length))
.Select(x => buffer.Take(x).ToArray())
.Finally(() => SharedPools.ByteArray.Free(buffer));
})
.Repeat()
.TakeWhile(x => x.Any())
.Subscribe(
(bytes) => received.Add(bytes),
ex =>
{
Log.ErrorException("Read Failed", ex);
Dispose();
},
() =>
{
Log.Trace(() => "Socket Read Observable Completed");
Dispose();
});
}