减少.NET应用程序内存占用的一则实践
摘要:最近一周比较忙,主要的工作内容是在做一个叫“键盘精灵”的东西,简单来讲就是将很多数据放到内存中,对这些数据进行快速检索,然后找出根据输入条件最匹配的10条记录并予以展示。具体和下面两款炒股软件的相关功能类似:数据以文本形式存在文件中,且数据量较大,有近20万条,每一条记录有几个字段,以分隔符分割。当时使用的是6万条记录的测试数据,文本文件将近10M,这个模块加载到内存并建立缓存之后,大概会占用将近70-80M的内存。自我接手以后,主要的任务就是降低内存消耗和提高匹配效率。一、避免创建不必要的对象拿到代码后,第一步就是看设计文档,然后断点一步一步的看代码,大概明白了逻辑之后,发现思路有一些问题。
阅读全文
posted @
2013-04-21 17:33
haosola
编辑
ASP.NET中检测图片真实否防范病毒上传
摘要:主要是用来判断客户端上传的图片是否为真实的图片,以防病毒侵入,保证上传的文件的安全。 主要代码如下: 需要引用 [csharp] using System.IO; using System.IO; [csharp] public void UploadFile() { try { HttpPostedFile postfile = Request.Files["file"]; string savepath = Server.MapPath("Image/" + postfile.FileName); postfile.SaveAs(savepath);
阅读全文
posted @
2013-04-18 23:32
haosola
编辑
利用脚本将java回归到面向函数式编程
摘要:这一年来一直在思考一个问题,就是如何降低Java开发的复杂度,有时候真的是感觉“面向对象一声炮响,将所有人都震晕了“,做了这么多年Java,越做越累,原因在于始终找不到一个很好途经有效降低项目开发的成本,让刚刚走出校门的学弟、学妹能够快速的创造价值。 其实公司也有很好的培训制度,从基础开发到高级应用,面面俱到,但是这种培训真正给项目带来的价值并不是很大,每个在客户现场的项目经理都会深切认同”远离战场的人都是军事家“这句话。 可能是自己太懒惰了,对新的JAVA框架都不太爱去看,总是感觉到了现在这个时候,还沉浸在掌握了几个框架的YY中,实在悲催,浪费青春,终究尘归尘,土归土,而且框架设计者...
阅读全文
posted @
2013-04-15 20:36
haosola
编辑
VB中用ADO对象动态建立新的数据库和表
摘要:前面讲到的方法有一定的局限性,它不能让用户产生自己所需的数据库文件,即使能产生数据表也只能在原有表的基础上生成。我们现在的目的就是让用户利用ADO对象在程序运行过程中创建数据库和表,就好象他利用Access来建立数据库和表一样。为此,我们应该引用对象库"Microsoft ActiveX Data Objects 2.5 Library"和"Microsoft ADO Ext 2.1. For DDL Security" 我们不妨用一个实例来说明具体的操作过程和方法。我们的实例要达到目的是:在程序运行过程中建立一个数据库,数据库的名称由用户输入。然后在数
阅读全文
posted @
2013-04-12 22:14
haosola
编辑
VB中用ADO对象动态在原有数据表的基础上产生新的数据表
摘要:在Visual Basic中,常用的数据访问接口有下列三种:数据库访问对象(DAO,Data Access Object)、远程数据库对象(RDO,Remote Data Object)和ActiveX数据对象(ADO,ActiveX Data Object )。数据库访问技术一直在不断进步,而这三种接口的每一种都分别代表了该技术的不同发展阶段。最新的是ADO,它是比RDO和DAO更加简单,然而更加灵活的对象模型。正因如此,越来越多的人在用VB开发数据库软件时使用ADO作为数据访问接口。在开发过程中,我们通常的使用的方法是:先使用数据库管理系统(例如:Microsoft Access)或V..
阅读全文
posted @
2013-04-12 22:08
haosola
编辑
ASP.Net 实现伪静态方法及意义
摘要:搜索引擎会不收录带问号的网址,因为搜索引擎怕由于问号而陷入死循环,称为“搜索机器人陷阱”,所以很多带问号的地址搜索引擎不会进去。 带问号的网址,搜索引擎也是会收录的,权重不高。 伪静态对于搜索引擎来说,就是静态,因为地址中间没有带问号,所以没有真静态比伪静态收录的多的说法。 为啥要选择伪静态捏? “Discuz!目前有 2129867 篇帖子,存储成html的话大约是 20799M,也就是 20G左右。这当中还不计算由于磁盘存储机制造成的空间浪费(100个 1k的文件占用的空间可能会是200K)。” 所谓的文本论坛,实际就跟真静态的说法差不多了,将数据存储在空间上面,大量的读写硬...
阅读全文
posted @
2013-04-04 23:07
haosola
编辑
使用WebSharper和F#开发移动应用
摘要:Formlet是最近一套来自学术界的形式体系,它是WebSharper不可分割的一部分。而WebSharper则是最初实现Formlet的几个框架之一。Formlet代表了一流的、类型安全的、可组合的数据表单,它与你可能一直在用的ASP.NET或其他Web框架中的非严格类型的方法有着很大的不同。WebSharper实现中包含了从属formlet,其中formlet的一部分从属于另一部分,例如从属于多选项的下拉框或是输入框中的输入值;flowlets是一种定制的布局,它用来在一个formlet计算表达式或F#一元结构中以一种类似向导的顺序方式一步步渲染每一个formlet.下面是一个简单的for
阅读全文
posted @
2013-04-04 10:10
haosola
编辑