From 2bec9c838d2d688025698de8ec1de401ffd7dd1f Mon Sep 17 00:00:00 2001
From: wxr <464027401@qq.com>
Date: 星期二, 11 八月 2020 14:13:55 +0800
Subject: [PATCH] 20200811

---
 HDL_ON/UI/UI2/FuntionControlView/Music/A31MusicModel.cs |   83 ++++++++++++++++++++++++++++-------------
 1 files changed, 56 insertions(+), 27 deletions(-)

diff --git a/HDL_ON/UI/UI2/FuntionControlView/Music/A31MusicModel.cs b/HDL_ON/UI/UI2/FuntionControlView/Music/A31MusicModel.cs
index 35d5e30..69ebfbe 100644
--- a/HDL_ON/UI/UI2/FuntionControlView/Music/A31MusicModel.cs
+++ b/HDL_ON/UI/UI2/FuntionControlView/Music/A31MusicModel.cs
@@ -17,18 +17,44 @@
         }
 
         static List<System.Threading.Thread> updataMusicStatesListThread = new List<System.Threading.Thread>();
-
         /// <summary>
         /// 璇诲彇闊充箰鐘舵��
         /// </summary>
         public static void ReadMusicStates()
         {
-
-            var threads = updataMusicStatesListThread.FindAll((obj) => { return obj.Name == "A31"; });
-            for (int i =0;i< updataMusicStatesListThread.Count;)
+            RemoveListThread();
+            if (GetCollection)
+            {
+                for (int i = 0; i < A31MusicModelList.Count; i++)
+                {
+                    var a31player = A31MusicModelList[i];
+                    var musicThread = new System.Threading.Thread(() =>
+                    {
+                        while (true)
+                        {
+                            System.Threading.Thread.Sleep(1000);
+                            if (!a31player.IsOnLine)
+                            {
+                                continue;
+                            }
+                            SendMethod.ReadStatus(a31player);
+                        }
+                    })
+                    { IsBackground = true, Name = "A31" };
+                    musicThread.Start();
+                    updataMusicStatesListThread.Add(musicThread);
+                }
+            }
+        }
+        
+        /// <summary>
+        /// 绉婚櫎涔嬪墠鐨勭嚎绋�
+        /// </summary>
+        public static void RemoveListThread() {
+            for (int i = 0; i < updataMusicStatesListThread.Count;)
             {
                 try
-                {
+                {                    
                     var thread = updataMusicStatesListThread[i];
                     if (thread.IsAlive)
                     {
@@ -45,29 +71,24 @@
                     MainPage.Log("clearA31Threads over");
                 }
             }
-
-            for (int i = 0; i < A31MusicModelList.Count; i++)
+        }
+        /// <summary>
+        /// 闊充箰鍒楄〃閲屾槸鍚︽湁闊充箰琚敹钘忚繃
+        /// </summary>
+        static bool GetCollection
+        {
+            get
             {
-                var a31player = A31MusicModelList[i];
-                var musicThread = new System.Threading.Thread(() =>
+                for (int i = 0; i < A31MusicModelList.Count; i++)
                 {
-                    while (true)
+                    if (A31MusicModelList[i].collection)
                     {
-                        System.Threading.Thread.Sleep(1000);
-                        if (!a31player.IsOnLine)
-                        {
-                            continue;
-                        }
-                        //A31MusicModel.ReadMusicStates();
-                        SendMethod.ReadStatus(a31player);
+                        return true; //鏌ヨ鏄惁鏈夐煶涔愯鏀惰棌杩�
                     }
-                })
-                { IsBackground = true, Name = "A31" };
-                musicThread.Start();
-                updataMusicStatesListThread.Add(musicThread);
+                }
+                return false;
             }
         }
-
         /// <summary>
         ///淇濆瓨褰撳墠闊充箰鍒楄〃
         /// </summary>
@@ -241,16 +262,15 @@
             }
         }
         /// <summary>
-        /// 璁板綍涓绘挱鏀惧櫒鏄惁琚敹钘�
+        /// 璁板綍涓绘挱鏀惧櫒鏄惁琚敹钘�(绉�妗″畾涔夌殑)
         /// </summary>
         public bool MainPlayCollection = false;
 
         public Slaves Slave = new Slaves();
-
+        /// <summary>
+        /// 璁板綍鏃堕棿
+        /// </summary>
         public static DateTime ProgressDateTime = DateTime.Now;
-        //static System.Threading.Tasks.Task task;
-        //闊抽噺鍒楄〃
-        //static List<int> volumeCommandList = new List<int> ();
 
         public static bool IsJson(string json)
         {
@@ -266,6 +286,14 @@
             {
                 return false;
             }
+        }
+        /// <summary>
+        /// 鑷畾涔夋棩蹇楄緭鍑�
+        /// </summary>
+        public static void LogMusic(string str)
+        {
+            var time = DateTime.Now;
+            Console.WriteLine(time + str);
         }
 
     }
@@ -311,4 +339,5 @@
         public string version = string.Empty;
         public string uuid = string.Empty;
     }
+
 }
\ No newline at end of file

--
Gitblit v1.8.0