摘要: 进程会等待所有的前台线程完成后再结束本工作;但是如果只剩下后台线程,则会直接结束本工作,不会等待后台线程完成后再结束本工作。 1 new Thread创建的线程 默认情况下使用new Thread()方法创建的线程为前台线程,可以通过手动设置IsBackground属性来创建一个后台线程; 默认前台 阅读全文
posted @ 2020-11-14 21:24 温故纳新 阅读(4170) 评论(1) 推荐(2) 编辑
摘要: 首先定义一个自定义的属性类MyAttribute,该类需要继承Attribute public class MyAttribute : Attribute { /// <summary> /// 代码 /// </summary> public string Code { get; set; } / 阅读全文
posted @ 2020-11-14 18:58 温故纳新 阅读(8448) 评论(0) 推荐(0) 编辑
摘要: 需要使用反射调用的类定义如下: class InvokeTest { #region 静态方法 public static void StaticMethod(string para) { Console.WriteLine(para); } #endregion #region 实例方法 publ 阅读全文
posted @ 2020-11-14 17:05 温故纳新 阅读(1324) 评论(0) 推荐(0) 编辑
摘要: 示例代码: #region Lambda表达式传参导致线程参数共享问题 public static void ThreadLambdaPara() { for(int i = 1; i <= 5; i++) { new Thread(() => ThreadMethod(i)).Start(); } 阅读全文
posted @ 2020-11-14 14:19 温故纳新 阅读(636) 评论(0) 推荐(0) 编辑
摘要: Task<string>没有使用async标记方法,不能把string返回值自动转换为Task<string> 不使用async改写如下 在该方法前面加上async关键字后就不会有问题,会将string自动转换为Task<string> 阅读全文
posted @ 2020-11-14 13:06 温故纳新 阅读(3197) 评论(0) 推荐(0) 编辑