Performance upgrae - history control update only when it's really needed

This commit is contained in:
szporowolik
2019-10-19 13:13:20 +02:00
parent 1d6b32872b
commit fb0620d178
3 changed files with 15 additions and 5 deletions

View File

@@ -5,6 +5,8 @@ internal class Globals
{ {
public static string strPerunVersion = "DEBUG"; // Helper for pulling version definition public static string strPerunVersion = "DEBUG"; // Helper for pulling version definition
public static string[] arrLogHistory = new string[10]; // Log history for GUI public static string[] arrLogHistory = new string[10]; // Log history for GUI
public static bool bLogHistoryUpdate = true; // Mark if log control require update
public static string strPerunTitleText = ""; public static string strPerunTitleText = "";
} }

View File

@@ -13,6 +13,7 @@ internal class PerunHelper
} }
arrLogHistory[arrLogHistory.Length - 1] = DateTime.Now.ToString("HH:mm:ss") + " > " + strEntryToAdd; // Add entry at the last position arrLogHistory[arrLogHistory.Length - 1] = DateTime.Now.ToString("HH:mm:ss") + " > " + strEntryToAdd; // Add entry at the last position
Globals.bLogHistoryUpdate = true;
} }
public static string GetAppVersion(string strBeginning) public static string GetAppVersion(string strBeginning)
{ {

View File

@@ -201,7 +201,7 @@ namespace Perun_v1
while (tcpcServer.thrTCPListener.IsAlive) while (tcpcServer.thrTCPListener.IsAlive)
{ {
Thread.Sleep(100); //ms Thread.Sleep(10); //ms
} }
form_Main_EnableControls(); // Enable controls form_Main_EnableControls(); // Enable controls
@@ -337,13 +337,20 @@ namespace Perun_v1
{ {
// Main timer to sync GUI with background tasks and flush buffers // Main timer to sync GUI with background tasks and flush buffers
// Refresh Log Window // Refresh Log Window
con_List_Received.Items.Clear(); if (Globals.bLogHistoryUpdate)
foreach (string i in Globals.arrLogHistory)
{ {
if (i != null) con_List_Received.Items.Clear();
foreach (string i in Globals.arrLogHistory)
{ {
con_List_Received.Items.Add(i); if (i != null)
{
con_List_Received.Items.Add(i);
}
} }
Globals.bLogHistoryUpdate = false;
} else
{
// Do nothing , control does not require update
} }
} }