Action
无返回值,多线程常用
cs
Action<string> action1 = (name) => Console.WriteLine($"hello {name}");
action1("tom");
Func
有返回值,扩展方法常用,最后一个参数是输出参数
cs
Func<int, int, double> f;
父窗体接收消息


父窗体广播消息

