I am trying to write an application which transfers data between 2 systems. This application is used by a user, so it is WinForm application. When data transfering is started by a click of the user, the GUI gets frozen even though I start the data transfering in another thread. I am doing something wrong but I couldnt figure it out. here is my SIMPLIFIED code below....
What am I doing wrong?
// Button Click Event
private void btnStart_Click(object sender, EventArgs e)
{
   StartThread();
}
// This starts the threaad.
public static void StartThread()
{
   string msg = string.Empty;
   int i = 0;
   continue_ = true;
   if (list != null)
   {
       while (continue_)
       {
           i++;
           Thread.Sleep(5000);
           Thread thrd1 = new System.Threading.Thread(() => Test());
           thrd1.Start();
       }
   }
}
// This is a simplified code.
public static void Test() 
{
        string msg = string.Empty;
        int i = 0;
        continue_ = true;
        while (continue_)
        {
            i++;
            Thread.Sleep(5000);
            FormMain.dal.ExecuteQuery("INSERT INTO A_TEST VALUES('"+i+"')",null,CommandType.Text,out msg);
        }
}