摘要: 1 互斥锁lock(基于Monitor实现) 定义: private static readonly object Lock = new object(); 使用: lock (Lock) { //todo } 作用:将会锁住代码块的内容,并阻止其他线程进入该代码块,直到该代码块运行完成,释放该锁。 阅读全文
posted @ 2019-01-31 18:47 翻白眼的哈士奇 阅读(23855) 评论(2) 推荐(6) 编辑
摘要: 简介: Task 对象是一种的中心思想基于任务的异步模式首次引入.NET Framework 4 中。 因为由执行工作Task对象通常以异步方式执行线程池线程上而不是以同步方式在主应用程序线程中,可以使用Status属性,并将IsCanceled, IsCompleted,和IsFaulted属性, 阅读全文
posted @ 2019-01-31 17:24 翻白眼的哈士奇 阅读(10050) 评论(1) 推荐(2) 编辑
摘要: 1.下载 Newtonsoft.Json 右键引用,选择 管理NuGet程序包,选择浏览,输入log4net,然后点击下载 2.json数据的组装与解析 阅读全文
posted @ 2019-01-31 16:38 翻白眼的哈士奇 阅读(688) 评论(0) 推荐(0) 编辑
摘要: 1.下载 log4net 右键引用,选择 管理NuGet程序包,选择浏览,输入log4net,然后点击下载 2.在App.config中输入内容(不存在自己创建) 3.AssemblyInfo.cs 中加入代码 4.使用log4net记录日志 5.效果 文件: 打印效果: [2019-01-31 0 阅读全文
posted @ 2019-01-31 15:53 翻白眼的哈士奇 阅读(555) 评论(0) 推荐(0) 编辑
摘要: Dictionary Key排序 Dictionary<string, string> dct= new Dictionary<string, string>(); Dictionary<string, string> dctNew = dct.OrderBy(x => x.Key).ToDicti 阅读全文
posted @ 2019-01-31 12:03 翻白眼的哈士奇 阅读(324) 评论(0) 推荐(0) 编辑
摘要: 初始化数据: List<KeyValuePair<string, string>> list; ComBox1.ValueMember = "Key";ComBox1.DisplayMember = "Value";ComBox1.DataSource = list; 使用: private voi 阅读全文
posted @ 2019-01-31 11:51 翻白眼的哈士奇 阅读(2133) 评论(0) 推荐(0) 编辑
摘要: 1 2 3 43 44 45 46 47 加入试题篮 48 49 50 51 52 53 54 55 阅读全文
posted @ 2019-01-31 11:35 翻白眼的哈士奇 阅读(4278) 评论(0) 推荐(1) 编辑
摘要: 一 使用webbrowser现有方法 引用:https://blog.csdn.net/xiaokailele/article/details/48392673 二 使用javascript webbrowser调用 三 结果: 我选择使用第二种方法,因为我是通过比较网页内容的高度和webbrows 阅读全文
posted @ 2019-01-31 11:13 翻白眼的哈士奇 阅读(534) 评论(0) 推荐(0) 编辑