public static void RunMultiplicationThread(int AmountOfRows) { PrintedAlready = false; CheckFinishMRE = new ManualResetEvent(false); CounterOfRemainingTasks = new TaskCounter(AmountOfRows); Thread MultiplicationThread = new Thread(() => StartMultiplication(AmountOfRows)); MultiplicationThread.Start(); }
public static void calculateAreasInManyThreads() { ThreadPool.SetMaxThreads(20, 20); CurrentMRE = new ManualResetEvent(false); CounterOfRemainingTasks = new TaskCounter(40); for (int counter = 0; counter < 40; ++counter) { Triangle BufForTriangle = new Triangle(MainWindow.MainRandom.Next(50), MainWindow.MainRandom.Next(50), counter); ThreadPool.QueueUserWorkItem(o => BufForTriangle.CalculateTriangleArea()); } CurrentMRE.WaitOne(); }
public static void CreateFiles(Object sender, EventArgs e) { if (!ThreadsRunning && !FilesWereCreated) { ThreadsRunning = true; CounterOfRemainingTasks = new TaskCounter(100); ThreadPool.SetMaxThreads(20, 20); for (int counter = 0; counter <= 100; ++counter) { int BugFixInt = counter; ThreadPool.QueueUserWorkItem(o => SaveFile(BugFixInt)); } } }