C#在后台运行循环

时间:2015-11-14 20:58:01

标签: c# multithreading while-loop

假设我有一个程序,这个程序有一个名为' number'的int变量,我想制作一个后台循环,它会将1加到'数字',而我在主程序中做一些计算。 我知道我需要使用线程,我试过但它确实有效。 你能帮帮我吗?非常感谢你!

1 个答案:

答案 0 :(得分:0)

该程序将产生一个单独的线程。您可以使用自己的代码轻松替换我的两个循环。

using System;
using System.Threading;

namespace ConsoleApplication3
{
    class Program
    {
        static void Main(string[] args)
        {
            var ts = new ThreadStart(BackgroundMethod);
            var backgroundThread = new Thread(ts);
            backgroundThread.Start();

            // Main calculations here.
            int j = 10000;
            while (j > 0)
            {
                Console.WriteLine(j--);
            }
            // End main calculations.
        }

        private static void BackgroundMethod()
        {
            // Background calculations here.
            int i = 0;
            while (i < 100000)
            {
                Console.WriteLine(i++);
            }
            // End background calculations.
        }
    }
}