专注于互联网--专注于架构

最新标签
网站地图
文章索引
Rss订阅
1.缘起: 对于需要进行线程同步的地方,我们经常用的就是.NET内置的lock关键字和ReaderWriterLock类。lock的功能相对简单,因为它不区分读写,也就是说如果都在lock块中,读线程都会阻塞另一个读线程,在很多读远远多于写的应用中,这会极大地折损性能。所以我们也经常需要使用读写分离的锁ReaderWriterLock,使用它,我们可以明确的指定是要获取读锁还是写锁。而且,当前的读线程是不会阻塞其它的读线程的。lock的使用非常简洁,而ReaderWriterLock类的使用就要繁琐很多,比如像这样: 于是,我设计了ESBasic.Threading.Sy [阅读全文] [PDF]
1.缘起:有些系统需要每隔一段时间就执行一下某个动作,比如,一个监控系统每隔10秒钟就要检测一下被监控对象的状态是否正常,那这时我们就可以用到循环引擎了。 有人说可以使用.NET框架自带定时器如System.Threading.Timer,嗯,没错。但是若这个类使用不当可能会引发后台池线程耗尽的后果。因为Timer的定时事件触发实在后台线程池中的某个线程中处理的。也就是说Timer的每次定时事件触发都会用到一个线程,如果定时的时间间隔小于事件处理的时间,则后台线程池中将会有越来越多的线程被Timer使用掉,直至线程池中再无空闲的线程。 而ESBasic.Threading. [阅读全文] [PDF]
1.缘起: 同我们从DateTime中将时刻部分作为ShortTime抽离出来一样,我们将DateTime中的日期部分也抽离出来,以ESBasic.Date类来表示。 比如,我们的报表系统是以天为单位来进行统计的,为了提高效率,我们会在每天凌晨将前一天的报表数据统计完毕,并存储到数据库中,一天的报表数据就对应数据库数据库中的一条记录,该记录以一个表示日期的整数而不是DateTime作为主键。比如主键值为20090501的表示这条记录对应的是2009年5月1日的报表数据。假设我想查询2009-05-01到2009-05-07这7天的报表数据,就没有必要传入2009-05- [阅读全文] [PDF]
(如果您能对照着源码来阅读本文,效果会更好。) 1.缘起: 假设我们的员工打卡系统,需要设定公司规定的上班时间、下班时间、以及还要对员工是否迟到早退等这些情况进行判断。 我们以什么方式来记录类似上下班时间这样只有时分秒没有年月日的时间了?你说可以使用DateTime,但是合适吗?总是觉得用DateTime来表示上下班的时间很别扭,因为我们的上下班时间并需要指定到具体的哪一天啊。 我设计了ESBasic.ShortTime来对类似上下班时间的概念进行抽象。ShortTime只有时分秒三个必需的属性,不必再牵扯到日期。 Sh [阅读全文] [PDF]
自从03年正式使用.NET开发以来,已经走过了6个年头,这期间我积累了几套类库和框架,ESBasic便是其中最基础的一个类库。ESBasic是Enterprise Service Basic的缩写,虽然也简写为ESB,但是它和Enterprise Service Bus(企业服务总线)没有任何关系。ESBasic是我能够快速和高效开发应用程序的利器之一,开这个专门的blog是想将它介绍给大家,希望能对大家有所启发。ESBasic覆盖的内容包括:对象管理、插件、网络(Socket)、多线程、Emit与AOP、及相关助手类和基础类型。后面的博文会一一介绍ESBasic中每个重要类的缘起、适用 [阅读全文] [PDF]
.net类库中发送电子邮件思路方法整理总结_ASP.NET窍门技巧_www.knowsky.com=gb2312"思路方法整理总结,学习.net类库中发送电子邮件思路方法整理总结,ASP.NET窍门技巧,网络学院,电脑技术"思路方法整理总结,发送电子邮件是许多需要用户注册网站WebSite通用功能通过正则表达式我们可以过滤掉不符合电子邮件格式输入但是仍没有办法确保用户填写电子邮件地址定是他本人真实有效电子邮件地址通常验证电子邮件真实有效办法是:当用户填写注册资料经过网站WebSite初步格式验.."加入收藏 | RSS订阅 Copyright © 2000-2 [阅读全文] [PDF]
通用类库和业务类库设计思想 在我们利用PB进行MIS系统开发时有很多业务是通用并且有很多组件是可以复用为了提高MIS系统开发效率缩短开发周期有必要把些公用对象抽象出来以便作 2次开发 这些通用对象部分是针对基本功能进行扩充我叫它通用类库采用加ufc_前缀方式命名 部分是针对业务功能进行扩充采用加wfc_前缀方式命名 以下先从整体上描述整个类库框架 然后在从具体类库来描述各个模块、数据库框架 我们假定现在有两个MIS系统需要开发分别是\"应用系统1\"和\"应用系统2\ [阅读全文] [PDF]
再次体现了C++保持核心语言的效率同时大力发展应用库的发展趋势!!在C++中,库的地位是非常高的。C++之父BjarneStroustrup先生多次表示了设计库来扩充功能要好过设计更多的语法的言论。现实中,C++的库门类繁多,解决的问题也是极其广泛,库从轻量级到重量级的都有。不少都是让人眼界大开,亦或是望而生叹的思维杰作。由于库的数量非常庞大,而且限于笔者水平,其中很多并不了解。所以文中所提的一些库都是比较著名的大型库。 标准库 标准库中提供了C++程序的基本设施。虽然C++标准库随着C++标准折腾了许多年,直到标准的出台才正式定型,但是在标准库的实现上却很令人欣慰得看 [阅读全文] [PDF]
本页内容 EventHandler 委托 自定义事件参数 参数化自定义事件 小结 本月内容是专门介绍事件编程系列专栏(共 3期)最后期在前两期专栏中我已经介绍了如何定义和引发事件(请参见 Basic Instincts:Programming with Events Using .NET 和 Basic Instincts:Static Event Binding Using WithEvents)我还解释了如何使用动态和静态事件绑定来绑定事件处理本月我将通过些在 Microsoft . [阅读全文] [PDF]
发送电子邮件是许多需要用户注册网站WebSite通用功能通过正则表达式我们可以过滤掉不符合电子邮件格式输入但是仍没有办法确保用户填写电子邮件地址定是他本人真实有效电子邮件地址通常验证电子邮件真实有效办法是:当用户填写注册资料经过网站WebSite初步格式验证的后用户并不能利用此帐号登录系统会向用户注册时填写电子邮件地址发送封电子邮件邮件中给出个链接只有当用户点击了这个链接的后才能登录到网站WebSite如果用户填写电子邮件地址不是真实有效或者不是他本人就不会收到这封电子邮件这样仍然不能登 [阅读全文] [PDF]
1 共10条 分1页