摘要: 泛型作为参数和返回值 public static Func<T, R> Memoize<T, R>(Func<T, R> func) where T: IComparable { Dictionary<T, R> cache = new Dictionary<T, R>(); return arg 阅读全文
posted @ 2022-02-22 17:40 江境纣州 阅读(663) 评论(0) 推荐(0) 编辑
摘要: 1、for循环:当闭包通过lambda表达式捕获可变变量时,lambda捕获变量的引用,而不是捕获该变量的当前值。因此,如果任务在变量的引用值更改后运行,则该值将是内存中最新的值,而不是捕获变量时的值。 for (int i = 0; i < 10; i++) { Task.Factory.Star 阅读全文
posted @ 2022-02-22 13:36 江境纣州 阅读(235) 评论(0) 推荐(0) 编辑
摘要: 垃圾回收触发条件 CLR在检测到第0代超出预算时触发一次; 显式调用 System.GC.Collect 方法; Windows 通过Win32函数检测到内存低时触发; CLR 正在卸载 AppDomain 时(一个AppDomain卸载时,CLR认为其中一切都不是根,执行一次涵盖所有代的GC); 阅读全文
posted @ 2022-02-22 11:15 江境纣州 阅读(236) 评论(0) 推荐(0) 编辑
摘要: public static class Program { public static void Main() { // 创建每2000ms就调用一次 TimerCallBack 方法的 Timer 对象 Timer t = new Timer(TimerCallBack, null, 0, 200 阅读全文
posted @ 2022-02-22 10:35 江境纣州 阅读(28) 评论(0) 推荐(0) 编辑
摘要: 参考https://blog.csdn.net/weixin_39328209/article/details/105945778?spm=1001.2014.3001.5502 它可以回收不在根表中直接或间接引用的托管内存。 然而,有时可能会忘记释放引用。 注意:如果对象互相引用,但没有在根表中引 阅读全文
posted @ 2022-02-22 10:23 江境纣州 阅读(177) 评论(0) 推荐(0) 编辑