public static void Main() { ThreadApp app = new ThreadApp(); Thread t = new Thread(app.Run); ThreadApp app2 = new ThreadApp(); Thread t2 = new Thread(app2.Run); t.Name = "First Thread"; app.Text = t.Name; t.Start(); t2.Name = "Second Thread"; app2.Text = t2.Name; t2.Start(); Process proc = Process.GetCurrentProcess(); ProcessThreadCollection threads = proc.Threads; //app.Text = "Thread ID " + threads[threads.Count-2].Id; //app2.Text = "Thread ID " + threads[threads.Count-1].Id; foreach (ProcessThread pt in threads) { Console.WriteLine("Process Name: " + proc.ProcessName + " Thread ID: " + pt.Id + " Thread Container: " + pt.Container); } }
//Открывает локальный поток расчета //id - Id потока public string OpenLocal(int id, bool showIndicator = true) { _thread = new ThreadApp(); _thread.Open(id, showIndicator); return(_thread.ErrMessage()); }