Winsocket
文章平均质量分 88
shining100
这个作者很懒,什么都没留下…
展开
-
Winsocket入门教程一:多线程阻塞式服务器和阻塞式客户端程序(TCP)
最近因为工作需要学习了Winsocket客户端服务器模型程序的设计。在学习的过程中,我发现学习Winsocket的资料不多并且十分的零散。我一直没有找到一本学习Winsocket方面的经典国外著作。而且这些资料中并没有提供源代码文件,所以我只有将这些源代码在自己敲一遍。在敲代码的过程中,我发现了这些源代码中的一些错误的地方和一些已经过时的Windows程序的输写方法(Win16?)。现原创 2010-05-09 12:21:00 · 6686 阅读 · 4 评论 -
Winsocket入门教程三:以Windows消息机制驱动的客户端程序
前面两讲为大家介绍了编写传统socket程序的两种方法,今天将为大家介绍一种使用Windows消息机制编写socket客户端程序的方法。使用Windows消息机制编写socket程序主要有一下的好处:一是我们可以将大部分的recv操作以及close操作放到消息处理函数里面,以利于代码的维护;二是当有数据可读的时候,socket程序会接到相应的消息,我们可以在这时候读取数据。大家可以想像一下,在传统的socket程序中,如果一个程序在你没有向它发送请求的时候给你传送数据的话,你如果没有进行相应的检测原创 2010-07-25 13:07:00 · 2295 阅读 · 2 评论 -
Winsocket入门教程二:非阻塞式服务器和客户端程序(TCP)
上次为大家介绍了阻塞式多线程服务端程序和阻塞式客户端程序的设计方法,但是在上文的最后也提到过,服务器程序会因为建立连接和关闭连接而频繁的创建和关闭线程会产生大量的内存碎片,从而导致服务端程序不能保证长时间的稳定运行。因此我在这里为大家介绍另外一种建立服务器和客户端程序的方法,即建立非阻塞式的服务器和客户端程序。那什么是非阻塞呢?非阻塞是相对于阻塞而言,阻塞指的是在进行一个操作的时候,如服务器接收客户端的连接(accept),服务器或者客户端读写数据(read、write),如果该操作没有执行完成(成功或者失原创 2010-06-06 23:20:00 · 4694 阅读 · 1 评论 -
重构阻塞式客户端程序代码
在这几个月中阅读和编写了大量的套接字程序,所以对套接字程序的编写也有了新的认识。现在这里分享出来与大家交流一下,不足之处还望大家指正。 这里的示例程序是修改自Winsocket入门教程一:多线程阻塞式服务器和阻塞式客户端程序(TCP)中的客户端程序。相对于原来的程序,主要进行了以下几个方面的处理: 1.添加了更好的错误处理代码。使用GOTO语句将错误处理放到一起,可以使错误处理的代码更利于维护,并且减少代码的重复(Code duplicate) 2.使用微软推荐的函数geta原创 2011-01-17 01:48:00 · 1049 阅读 · 0 评论 -
重构阻塞式服务器程序代码
<br /> 呵呵,偷了点懒,由于本文和上一篇文章的目的是重构网络程序的代码,所以这里只重构了Winsocket入门教程一:多线程阻塞式服务器和阻塞式客户端程序(TCP)服务器程序的网络部分,关于多线程部分的处理,起参考以上链接。<br /> // 此示例程序参考MSDN Winsocket Server Demo// 示例和自己处理Winsocket程序的经验而成// 不足和错误之处望大家指正// 原始DEMO地址:http://msdn.microsoft.com/zh-cn/l原创 2011-01-31 21:31:00 · 956 阅读 · 0 评论