From ca47896204482bf4a6979e3838bf7f09f61cebeb Mon Sep 17 00:00:00 2001
From: giy <giy@omp-system.ru>
Date: Fri, 02 Sep 2022 14:16:56 +0300
Subject: [PATCH] Обновление до версии 2.9.0

---
 QtVsTools.Package/QML/Debugging/V4/QmlDebugV4Protocol.cs |   16 ++++++++--------
 1 files changed, 8 insertions(+), 8 deletions(-)

diff --git a/QtVsTools.Package/QML/Debugging/V4/QmlDebugV4Protocol.cs b/QtVsTools.Package/QML/Debugging/V4/QmlDebugV4Protocol.cs
index 07315df..a6bc303 100644
--- a/QtVsTools.Package/QML/Debugging/V4/QmlDebugV4Protocol.cs
+++ b/QtVsTools.Package/QML/Debugging/V4/QmlDebugV4Protocol.cs
@@ -53,10 +53,10 @@
         IMessageEventSink sink;
         DebugClient client;
         int nextRequestSeq = 0;
-        Dictionary<int, PendingRequest> pendingRequests = new Dictionary<int, PendingRequest>();
+        readonly Dictionary<int, PendingRequest> pendingRequests = new Dictionary<int, PendingRequest>();
         Task eventHandlingThread;
-        EventWaitHandle eventReceived = new EventWaitHandle(false, EventResetMode.AutoReset);
-        ConcurrentQueue<Event> eventQueue = new ConcurrentQueue<Event>();
+        readonly EventWaitHandle eventReceived = new EventWaitHandle(false, EventResetMode.AutoReset);
+        readonly ConcurrentQueue<Event> eventQueue = new ConcurrentQueue<Event>();
 
         public uint? ThreadId { get { return client.ThreadId; } }
 
@@ -92,7 +92,8 @@
         protected override void DisposeFinally()
         {
             eventReceived.Set();
-            eventHandlingThread.Wait();
+            QtVsToolsPackage.Instance.JoinableTaskFactory.Run(
+                async () => await Task.WhenAll(new[] { eventHandlingThread }));
             eventReceived.Dispose();
         }
 
@@ -100,8 +101,7 @@
         {
             while (!Disposing) {
                 eventReceived.WaitOne();
-                Event evt;
-                while (!Disposing && eventQueue.TryDequeue(out evt))
+                while (!Disposing && eventQueue.TryDequeue(out Event evt))
                     sink.NotifyEvent(evt);
             }
         }
@@ -209,8 +209,8 @@
 
         public class PendingRequest : Finalizable
         {
-            public Request Request { get; private set; }
-            EventWaitHandle responded;
+            public Request Request { get; }
+            readonly EventWaitHandle responded;
 
             public PendingRequest()
             {

--
Gitblit v1.9.1