- 博客(4)
- 资源 (5)
- 收藏
- 关注
原创 ESBasic 可复用的.NET类库(13) -- 分组对象管理器 IGroupingObjectManager
1.缘起: 假设我们的订单系统需要管理所有未处理的订单,而客人经常需要查询属于自己的未处理的订单列表。另外,可能客服人员也需要根据订单ID迅速地找到对应的未处理订单。基于第一个需求,我们就可以将未处理的订单依据客人的帐号进行分组管理。 我设计了ESBasic.ObjectManagement.Managers.IGroupingObjectManager分组对象管理器
2009-10-27 15:04:00 1111
原创 ESBasic 可复用的.NET类库(12) -- 对象管理器 IObjectManager
1.缘起:我们经常需要对一些动态对象进行管理,最常见的例子就是在线用户管理。当一个用户成功登陆到服务器后,我们就需要将其管理起来;当他退出后,就不再需要再管理他了。这就是所谓动态对象的含义,这些对象并不是一直需要被管理,只有当其被激活后,才需要被管理。它们总是在“激活”状态和“非激活”状态之间不断地切换。我设计了对象管理器ESBasic.ObjectManagement.Mana
2009-10-21 09:06:00 1053
原创 ESBasic 可复用的.NET类库(11) -- 双向映射 IBidirectionalMapping
1.缘起: 假设我们的用户管理系统要求用户的ID和Name都必须是唯一的,并且用户的ID和Name一经确定就不能被修改。而且管理系统经常需要根据ID来查找Name,也经常需要根据Name来查找ID。根据这样的需求,我们可以考虑使用一个Dictionary来将ID和Name缓存起来,通常ID作为Key,Name作为Value。这样便可实现通过ID查询Name的快速查找,但是,通过
2009-10-15 10:34:00 1005 2
原创 ESBasic 可复用的.NET类库(10) -- 简易的读写锁 SmartRWLocker
1.缘起: 对于需要进行线程同步的地方,我们经常用的就是.NET内置的lock关键字和ReaderWriterLock类。lock的功能相对简单,因为它不区分读写,也就是说如果都在lock块中,读线程都会阻塞另一个读线程,在很多读远远多于写的应用中,这会极大地折损性能。所以我们也经常需要使用读写分离的锁ReaderWriterLock,使用它,我们可以明确的指定是要获取“读”锁
2009-10-10 16:34:00 989 1
OVCS视频会议源码(Windows、Linux、Android、iOS、Web、银河麒麟、统信UOS)
2023-06-20
即时通讯系统GGTalk 8.0 源码(Windows、Linux、Android、iOS)
2022-10-14
C#网络电子白板(支持pdf,word,ppt课件) 源码
2015-09-10
企业即时通信系统 - OrayTalk 2.1
2014-09-24
ESFramework通讯框架
2012-05-24
IM聊天系统源码(C#),支持桌面客户端和Silverlight客户端
2011-04-08
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人