From cee712105850ac3385cd0091a923438167433f9f Mon Sep 17 00:00:00 2001
From: TSR Berry <20988865+TSRBerry@users.noreply.github.com>
Date: Sat, 8 Apr 2023 01:22:00 +0200
Subject: Move solution and projects to src
---
.../Logging/Targets/AsyncLogTargetWrapper.cs | 79 ----------------------
1 file changed, 79 deletions(-)
delete mode 100644 Ryujinx.Common/Logging/Targets/AsyncLogTargetWrapper.cs
(limited to 'Ryujinx.Common/Logging/Targets/AsyncLogTargetWrapper.cs')
diff --git a/Ryujinx.Common/Logging/Targets/AsyncLogTargetWrapper.cs b/Ryujinx.Common/Logging/Targets/AsyncLogTargetWrapper.cs
deleted file mode 100644
index 43c62d31..00000000
--- a/Ryujinx.Common/Logging/Targets/AsyncLogTargetWrapper.cs
+++ /dev/null
@@ -1,79 +0,0 @@
-using System;
-using System.Collections.Concurrent;
-using System.Threading;
-
-namespace Ryujinx.Common.Logging
-{
- public enum AsyncLogTargetOverflowAction
- {
- ///
- /// Block until there's more room in the queue
- ///
- Block = 0,
-
- ///
- /// Discard the overflowing item
- ///
- Discard = 1
- }
-
- public class AsyncLogTargetWrapper : ILogTarget
- {
- private ILogTarget _target;
-
- private Thread _messageThread;
-
- private BlockingCollection _messageQueue;
-
- private readonly int _overflowTimeout;
-
- string ILogTarget.Name { get => _target.Name; }
-
- public AsyncLogTargetWrapper(ILogTarget target)
- : this(target, -1, AsyncLogTargetOverflowAction.Block)
- { }
-
- public AsyncLogTargetWrapper(ILogTarget target, int queueLimit, AsyncLogTargetOverflowAction overflowAction)
- {
- _target = target;
- _messageQueue = new BlockingCollection(queueLimit);
- _overflowTimeout = overflowAction == AsyncLogTargetOverflowAction.Block ? -1 : 0;
-
- _messageThread = new Thread(() => {
- while (!_messageQueue.IsCompleted)
- {
- try
- {
- _target.Log(this, _messageQueue.Take());
- }
- catch (InvalidOperationException)
- {
- // IOE means that Take() was called on a completed collection.
- // Some other thread can call CompleteAdding after we pass the
- // IsCompleted check but before we call Take.
- // We can simply catch the exception since the loop will break
- // on the next iteration.
- }
- }
- });
-
- _messageThread.Name = "Logger.MessageThread";
- _messageThread.IsBackground = true;
- _messageThread.Start();
- }
-
- public void Log(object sender, LogEventArgs e)
- {
- if (!_messageQueue.IsAddingCompleted)
- {
- _messageQueue.TryAdd(e, _overflowTimeout);
- }
- }
-
- public void Dispose()
- {
- _messageQueue.CompleteAdding();
- _messageThread.Join();
- }
- }
-}
\ No newline at end of file
--
cgit v1.2.3