线程知识点一:如何传入多个参数

 static void Main(string[] args)
        {
            Thread tn = new Thread(PrintPara);
            
            ArrayList arr = new ArrayList();
            arr.Add("a");
            arr.Add(12);
            arr.Add(11.1);
            tn.Start(arr);
            for (int i = 0; i < 10; i++)
            {
                Console.WriteLine("===");
            }
            Console.Read();
        }
        
        static void PrintPara(object o)
        {
            ArrayList arr = o as ArrayList;
            string a = arr[0].ToString();
            int b = Convert.ToInt32(arr[1]);
            double c = Convert.ToDouble(arr[2]);
            for (int i = 0; i < 3000; i++)
            {
                
            }
            Console.WriteLine("第一参数的是{0} 第二个参数是{1} 第三个参数是{2}",a,b,c);
            Console.WriteLine("线程执行结束");
        }

当线程执行带参数的方法时,只能传入一个object o的参数,既然object o 可以转换成任何类型,同时又需要多个转入多个参数,那就直接转成ArrayList类型,这样就可以传入多个参数了。

原文地址:https://www.cnblogs.com/codefish/p/2447600.html