国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁(yè) > 學(xué)院 > 開(kāi)發(fā)設(shè)計(jì) > 正文

C# 同一應(yīng)用程序域不同線程之間的參數(shù)傳遞方式

2019-11-17 02:46:54
字體:
來(lái)源:轉(zhuǎn)載
供稿:網(wǎng)友

C# 同一應(yīng)用程序域不同線程之間的參數(shù)傳遞方式

很久沒(méi)有寫(xiě)博客了,最近的項(xiàng)目不用寫(xiě)代碼。今天沒(méi)事就看看thread之間的參數(shù)傳遞方式,這里主要適用于運(yùn)行在不同線程的兩個(gè)方法之間參數(shù)傳遞。直接看代碼

1。方法之間直接傳遞參數(shù)

   void DemoParam()        {            Console.WriteLine("DemoParam:" + Thread.CurrentThread.ManagedThreadId);            //Thread t = new Thread(new ParameterizedThreadStart(testparam));            //t.Start("majaing");            ThreadPool.QueueUserWorkItem(new WaitCallback(testparam),"majaing");        }        void testparam(object obj)        {            Console.WriteLine("DemoParam:" + Thread.CurrentThread.ManagedThreadId);                    Console.WriteLine(obj.ToString());        }

2。借助Static

 //[ThreadStatic]        static string namekey;        void DemoStatic()        {            Console.WriteLine("Static:" + Thread.CurrentThread.ManagedThreadId);            namekey = "majiang";            ThreadPool.QueueUserWorkItem(new WaitCallback(testStatic));        }        void testStatic(object obj)        {            Console.WriteLine("Static:" + Thread.CurrentThread.ManagedThreadId);            Console.WriteLine(namekey);        }

3。借助AppDomain

 void DemoAppDomain()        {            Console.WriteLine("AppDomain:"+Thread.CurrentThread.ManagedThreadId);            AppDomain.CurrentDomain.SetData("name", "majiang");            ThreadPool.QueueUserWorkItem(new WaitCallback(testAppDomain));        }        void testAppDomain(object obj)        {            Console.WriteLine("AppDomain:"+Thread.CurrentThread.ManagedThreadId);            var a = AppDomain.CurrentDomain.GetData("name");            Console.WriteLine(a);        }

4。借助CallContext

  void DemoCallContext()        {            Console.WriteLine("CallContext"+Thread.CurrentThread.ManagedThreadId);           // ExecutionContext.SupPRessFlow();            CallContext.LogicalSetData("name", "majiang");            ThreadPool.QueueUserWorkItem(new WaitCallback(testCallContext));                   }        void testCallContext(object obj)        {            Console.WriteLine("CallContext"+Thread.CurrentThread.ManagedThreadId);            var a = CallContext.LogicalGetData("name");            Console.WriteLine(a);        }

注意里面的注釋哦。


發(fā)表評(píng)論 共有條評(píng)論
用戶(hù)名: 密碼:
驗(yàn)證碼: 匿名發(fā)表
主站蜘蛛池模板: 石渠县| 商城县| 启东市| 宾川县| 漠河县| 和平区| 汽车| 安乡县| 建瓯市| 衡南县| 乌拉特中旗| 白玉县| 宜宾县| 金溪县| 泸水县| 秭归县| 尼勒克县| 湘潭县| 湖口县| 衡山县| 开平市| 启东市| 会东县| 两当县| 永济市| 竹北市| 六枝特区| 岳阳市| 阿鲁科尔沁旗| 金坛市| 宿松县| 奉节县| 临泽县| 确山县| 建宁县| 巢湖市| 紫云| 固原市| 云龙县| 桃江县| 深州市|