- 博客(0)
- 资源 (5)
- 收藏
- 关注
asp.net做的网页QQ
webQQ(实现webQQ的大部分功能)源码
熬了几个通宵终于做好了,里面实现的webQQ的大部分功能,而且全开源,适用中高级.net开发人员研究,主要是对 XML 的操作和ajax,还用了少量的JQ可以自由增加组,加好友等
2013-02-28
C#实现TCP通信
在。net framework的类库(Class Library)中,提供了两个用于TCP网络通讯的类,分别是TcpClient和TcpListener.由其英文意义显而易见,TcpClient 类是基于TCP协议的客户端类,而TcpListener是服务器端,监听(Listen)客户端传来的连接请求。TcpClient类通过TCP协议与服务器进行通讯并获取信息,它的内部封装了一个Socket类的实例,这个Socket对象被用来使用TCP协议向服务器请求和获取数据。因为与远程主机的交互是以数据流的形式出现的,所以传输的数据可以使用。net framework中流处理技术读写。在我们下边的例子中,你可以看到使用NetworkStream类操作数据流的方法
2013-02-28
可扩展多线程异步Socket服务器框架EMTASS 2.1
三个核心线程
1.在Internet环境下的Socket应用中,客户端和网络容易出现异常,此时必须释放异常退出的Socket资源。考虑到服务器的高并发能力,一般采取包接收和处理分开的策略:将接收到的包添加到包队列,然后处理队列中的数据包。当然,侦听远程客户端的连接请求可以用Socket的AcceptAsync()异步方法(IOCP,I/O完成端口由此开始)。考虑到暂停、关闭同步操作,仍然用一个线程。这样,清理资源、处理数据包、侦停客户连接请求就是组成了EMTASS架构的三个核心线程,它们由.NET线程池统一管理:
客户端连接侦听线程 StartServerListen():循环侦听远程客户端的Socket连接请求。如果存在,通过适当规范性判断后创建该Socket的客户端会话TSessionBase对象(实际上是该类的派生类对象),同时调用该会话对象的Socket异步数据接收方法BeginReceive(),接收到的数据包存放在会话对象的包队列中。当然,新增的TSessionBase对象将添加到会话队列m_sessionTable(一个Dictionary<>泛型对象)中,该队列表就是清理和处理线程的遍历对象;
2.数据包处理线程 CheckDatagramQueue():循环检测TSessonBase队列中的会话对象,调用该对象的相关方法完成数据包解析、判断类型、数据存储等任务;
3.会话表检测线程 CheckSessionTable():循环检查会话表m_sessionTable中的各个会话对象,分步骤清理已经超时、无效或异常的会话对象,清理会话对象的缓冲区,释放其Socket资源。
http://blog.csdn.net/hulihui/article/details/3158613
2013-02-28
C++ 《企业员工管理系统》
一企业有四类职工:经理,销售经理,技术人员,销售员。现在,需要存储这些人员的人事档案信息:工号、姓名、职务、工资等信息。要求编写程序来完成如下功能:
1)添加、删除功能:能根据企业人事的变动情况,添加删除记录
2)修改功能:能根据编号对员工的记录进行修改并存储
3)保存功能:能对输入的数据进行相应的存储
4)工号在生成人员信息时同时生成,工号能唯一标识员工
5)查询统计功能:显示所有员工信息及销售信息
2011-01-07
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人