委托/事件/线程传参简单理解

2年前 (2022) 程序员胖胖胖虎阿
297 0 0

写了很多代码,但几乎都没写过委托/事件/线程传参方面应用的代码
因此自己总很容易理解后又遗忘
今天又重温了一下
因此以最简单的方式的代码方式写下来帮助理解

1.线程传参[简单几行代码]
 

 1 static void Main(string[] args)
 2         {
 3             if (ThreadPool.QueueUserWorkItem(new WaitCallback(Program.WritePara), "这是传进去的参数"))
 4             {
 5                 Console.WriteLine("ok:");
 6                 Console.Read();
 7             }
 8 
 9         }
10    protected static void WritePara(object para)
11         {
12             Console.WriteLine("hello:"+para);
13         }
14 
15 

2.委托/事件

 1委托/事件/线程传参简单理解public class Program
 2委托/事件/线程传参简单理解    {
 3委托/事件/线程传参简单理解       delegate void CallFunction(object para);//定义委托[和定义方法一个样,简单理解为static 换成了delegate]
 4委托/事件/线程传参简单理解       private static event CallFunction CallEvenHandle;//定义事件[简单理解,有事件必有委托]
 5委托/事件/线程传参简单理解        static void Main(string[] args)
 6委托/事件/线程传参简单理解        {
 7委托/事件/线程传参简单理解            //调用委托,之前定义像方法,这里new了一个实例,和js的new一个function 差不多
 8委托/事件/线程传参简单理解           CallFunction cf = new CallFunction(WritePara);
 9委托/事件/线程传参简单理解            cf.Invoke("goodmorning");
10委托/事件/线程传参简单理解
11委托/事件/线程传参简单理解
12委托/事件/线程传参简单理解         //调用事件,打上"+="后按"Tab"键就出来了,简单使用 
13委托/事件/线程传参简单理解         CallEvenHandle += new CallFunction(WritePara);
14委托/事件/线程传参简单理解            CallEvenHandle("CYQ");
15委托/事件/线程传参简单理解
16委托/事件/线程传参简单理解            //Console.Read();
17委托/事件/线程传参简单理解        }

18委托/事件/线程传参简单理解
19委托/事件/线程传参简单理解        protected static void WritePara(object para)
20委托/事件/线程传参简单理解        {
21委托/事件/线程传参简单理解            Console.WriteLine("hello:"+para);
22委托/事件/线程传参简单理解        }

23委托/事件/线程传参简单理解    }

24委托/事件/线程传参简单理解
版权声明:程序员胖胖胖虎阿 发表于 2022年9月16日 上午11:32。
转载请注明:委托/事件/线程传参简单理解 | 胖虎的工具箱-编程导航

相关文章

暂无评论

暂无评论...