随笔分类 - C#
C#
摘要:很多时候,我们要实现Winform异步操作,你可以用传统的方法,但个人感觉代码不好理解,而且使用真有点不舒服。也可以用Task来实现,Task(.net4.0新添加的对象)其实就是对线程池线程的一个封装,里面功能比较多,也比较好操作,其他的不多讲,今天只讲异步操作,举个简单的例子吧: 先上个图:单击Go按钮,数字自动增加,比较简单。 直接上代码: 1 public partial class Form1 : Form 2 { 3 private CancellationTokenSource cts = null;//主要用于中断线程 4 p...
阅读全文
摘要:废话不多说了,直接上代码: public static void Main() { Run(); } public static void Run() { List<DataRow> rows = new List<DataRow> { }; rows.AddRange(CreateTable().Select("ID>1")); //以下是关键代码,IEnumerable<DataRow>的一扩展方法 DataTab...
阅读全文
摘要:有时候我们需要动态调用一个方法,到底用什么方法呢?很多人想到了反射,有的人也想到了委托。大家都知道反射很慢,因为反射的类型不安全和以寻找字符串的方式来匹配相对应的成员,所以也有的人用委托,那到底谁更快呢?来看一个demo: 1 public interface IGetData 2 { 3 int GetData(int data); 4 } 5 6 public class Test : IGetData 7 { 8 public int GetData(int data) 9 {10 ...
阅读全文