谈表达式树的缓存(7):五种缓存方式的总体分析及改进方案
终于到了这个系列的最后一篇文章了,这个系列的文章本是许多话题的基础,却拖了那么长时间还没有完结。这篇文章主要讨论五种缓存方式各自的优劣,以及他们的性能关键在什么地方,如果要进行改进又有什么可选方案。在这个问题上,老赵的思考可能会有遗漏,如果您有任何补充,也请不吝指出。 SimpleKeyCache ...
从汇编入手,探究泛型的性能问题
经过了《泛型真的会降低性能吗?》一文中的性能测试,已经从实际入手,从测试数据上证明了泛型不会降低程序效率。只是还是有几位朋友谈到,“普遍认为”泛型的代码性能会略差一些,也有朋友正在进一步寻找泛型性能略差的证据。老赵认为这种探究问题的方式非常值得提倡。不过,老赵忽然想到,如果从能从汇编入手,证明非泛型...
泛型真的会降低性能吗?
在《.NET,你忘记了么?(八)—— 从dynamic到特性误用》一文中,飞林沙同学提到,使用泛型会略微降低程序性能,因此在程序中使用List<Object>是不合理的行为,应该使用ArrayList。这一点和老赵平时的观点相悖,老赵一直提倡,在.NET 2.0之后,要尽可能使用List...
一道简单的编程题,不过您做对了吗?
CSDN学生中心是个好地方,如果善于利用,应该能够对大众产生正面影响。老赵也去那里安了家,并给出了一个编程问题。题目如下: 请将方法补充完整:static void Reverse(int[] array, int begin, int end){ ...} Reverse方法的作用是将array数...
谈表达式树的缓存(6):五种缓存方式的性能比较
开始还债,因为还有至少两个可写的重要话题依赖在这个系列上,不解决就难以前进。 目前我们已经涉及了五种不同的缓存实现,它们分别是: SimpleKeyCache:构造字符串作为Key,使用字典作为存储。 PrefixTreeCache:使用前缀树进行存储。 SortedListCache:使用排...
在简单控制台程序中获取并使用参数
需求描述 从命令行接受参数是编写命令行程序时最常见的事情之一。从命令行读取参数往往要求: 允许多个同名参数 参数不区分大小写 提供参数别名(例如t等价于top) 提供参数默认值 在简单的控制台应用程序中,一般可以使用本文的代码片断进行开发辅助开发。 命令行输入参数格式 本文中的代码片断可...
ActorLite:一个轻量级Actor模型实现(下)
在上一篇文章中,我们实现了一个简单的Actor模型。如果要构建一个Actor,便只是简单地继承Actor<T>类型并实现其Receive方法即可。在上次文章的末尾,我们使用C#演示了该Actor模型的使用。不过现在我们将尝试一下F#。 C#使用Actor模型的缺陷 在Erlang中,每个...
ActorLite:一个轻量级Actor模型实现(中)
从上一篇文章的反响来看,似乎大家对于这一话题并没有太大兴趣。而这篇文章将会为大家带来一个简单但完整的Actor模型实现。此外,在下一篇文章中……可能会出现一些让您觉得有趣的东西。:) 任务分配逻辑 如上文所述,这次要实现的是一个非常简单的Actor模型,使用基于事件的分配方式,直接把任务交给.NET...
moss 内容编辑webpart html模式的时候 js 错误解决办法
错误提示 :解决办法 : 首先GOTO 目录C:\Program Files\Common Files\Microsoft Shared\web server extensions\12\TEMPLATE\LAYOUTS\2052找到 HtmlEditor.js文件 打开找到 function RT...
ActorLite:一个轻量级Actor模型实现(上)
Actor模型 Actor模型为并行而生,具Wikipedia中的描述,它原本是为大量独立的微型处理器所构建的高性能网络而设计的模型。而目前,单台机器也有了多个独立的计算单元,这就是为什么在并行程序愈演愈烈的今天,Actor模型又重新回到了人们的视线之中了。Actor模型的理念非常简单:天下万物皆为...