自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

基础不牢,地动山摇!

  • 博客(9)
  • 资源 (39)
  • 收藏
  • 关注

原创 socket通信之九:使用完成端口实现的一个聊天室

基本上windows平台下的几种IO模型都实现了一遍,还有两个没有实现,但是它们一个需要基于windows消息,一个和重叠IO中的事件通知模型比较类似,并且不能实现真正的异步,所以就不列出来了。这一篇介绍如何实现一个聊天室。前面介绍的几种模型中除了基本的socket模型和阻塞版本的模型之外都可以用来实现聊天室,因为这两个模型还不能实现支持多个客户端。对于其它的几个模型,我们需要做的只是

2015-09-04 23:08:02 4640 1

原创 socket通信之八:完成端口模型实现的客户/服务器模型

完成端口的详细说明可以参考下面这两篇文章,理论讲的很好。手把手教你玩转SOCKET模型:完成端口(Completion Port)详解 完成端口(I/O completion)原理 收藏但是本文的实现和它们还是有点区别。这里就只列出完成端口服务器端的基本流程了。首先,说说主线程:1.创建完成端口对象2.创建工作者线程(这里工作者线程的

2015-09-03 16:10:38 2356

原创 socket通信之七:Overlapped I/O 完成例程模型实现的客户/服务器模型

前一篇介绍了重叠IO的一种实现方式即基于事件通知的方式,这一篇介绍另外一种方式,即使用完成例程的方式实现重叠IO,首先声明这种方式比事件通知的方式简单多了。用完成例程来实现重叠I/O比用事件通知简单得多。在这个模型中,主线程只用不停的接受连接即可;辅助线程判断有没有新的客户端连接被建立,如果有,就为那个客户端套接字激活一个异步的WSARecv操作,然后调用SleepEx使线程处于一种可

2015-09-03 14:00:24 2212

原创 socket通信之六:Overlapped I/O 事件通知模型实现的客户/服务器模型

1.基于事件通知模型的Overlapped I/O(重叠IO模型)概括一点说,重叠模型是让应用程序使用重叠数据结构(WSAOVERLAPPED),一次投递一个或多个Winsock I/O请求。针对这些提交的请求,在它们完成之后,应用程序会收到通知,于是就可以通过自己另外的代码来处理这些数据了。      需要注意的是,有两个方法可以用来管理重叠IO请求的完成情况(就是说接到

2015-09-02 21:12:42 3279

原创 socket通信之五:select多路复用的客户/服务器模型

前面一篇介绍了服务器端使用多线程的方式来处理多个客户端的请求的,但是当客户端数量增多时线程数量会急剧增加,导致消耗大量的资源。于是就引出了服务器端的一种新的模型。1. 阻塞与非阻塞首先介绍几个基本的概念。阻塞方式( block ),顾名思义,就是进程或是线程执行到这些函数时必须等待某个事件的发生,假如事件没有发生,进程或线程就被阻塞,函数不能立即

2015-09-02 14:52:47 5699 3

原创 socket通信之四:多线程版本的客户/服务器模型

上一篇中阻塞版本的客户/服务器模型实现了一个客户端能连续向服务器端发送数据,但是因为服务器端在循环体内会被阻塞,这样其它客户端再连接服务器端时服务器是无法处理的,这就导致了服务器只能处理一个客户端,其它客户端都会等待,直到当前处理的客户端退出,然后就会再有一个客户端和服务器端连接。这一篇文章介绍一种可以让多个客户端同时能和服务器端通信的方式,就是服务器端的多线程模型,服务器每次调用accept建立一个连接后,启动一个新的线程为这个连接服务,然后服务器继续执行,这样就不会陷入阻塞状态了。

2015-09-02 14:51:52 2681 2

原创 socke通信之三:阻塞版本的客户/服务器模型

上一篇中实现出来的客户端只能向服务器端发送一次数据,然后就断开了连接,那么如果需要向服务器端持续发送数据,那么应该怎么做? 一个很直观地想法就是修改客户端的第4步,即发送,接收数据那一步,在基本的客户/服务器模型中我们是直接发送一个字符串给服务器端,现在我们从控制台接收数据将接收到的数据发送给服务器端,然后从服务端端接收数据并打印输出。并持续从控制台读取数据。

2015-09-02 14:50:30 1095

原创 socket通信之二:实现一个基本的客户/服务器模型

前一篇介绍了TCP/IP协议族和socket的一些基本的知识,这篇文章介绍在windows下如何实现一个使用socket通信的客户和服务器模型。首先还是将基本的流程回顾一下,任何复杂的模型都是从这个基本的模型中衍生出来的,然后介绍一下在windows平台下相关的api。服务器端编程的步骤:加载套接字库,创建套接字(WSAStartup()/socket())

2015-09-02 14:48:06 4418 1

原创 socket通信之一:TCP/IP模型与socket

这段时间看了一些网络相关的东西,这里做一个总结吧。参考了很多文章的内容,因为我本身是对着书并且参考网络资源在学习的,在最后会一一列出文章的地址。这篇文章主要介绍TCP/IP的一些基本知识,后面几篇继续深入一点探究。本篇主要包括下面这些知识:TCP/IP是什么socket介绍socket通信流程socket中TCP三次握手建立连接socket中TCP的四次挥手释放连接

2015-09-02 14:44:28 8097

聊天室工程文件

基于完成端口实现的聊天室程序的工程文件,实现多个客户端之间的通讯。

2015-09-04

聊天室可执行程序

使用完成端口模型实现的聊天室可执行文件。可以支持多个客户端连接并通信。

2015-09-04

socket工程文件完成端口版本

socket通信的客户端和服务器端的工程程序,基于完成端口技术,实现了多个客户端向服务器端持续发送数据

2015-09-03

socket通信可执行程序完成端口版本

socket通信的客户端和服务器端的可执行程序,基于完成端口技术,实现了多个客户端向服务器端持续发送数据

2015-09-03

socket工程文件重叠IO完成例程

socket通信的客户端和服务器端的工程文件,基于重叠IO完成例程技术,实现了多个客户端向服务器端持续发送数据

2015-09-03

socket工程文件阻塞版本

socket通信的客户端和服务器端的工程文件,这个是阻塞的版本,实现了客户端向服务器端持续发送数据,但是只能一个客户端发送。

2015-09-01

socket通信

socket通信的客户端和服务器端的可执行程序,这个是阻塞的版本,实现了客户端向服务器端持续发送数据,但是只能一个客户端发送。

2015-09-01

socket通信基本版本

socket通信的客户端和服务器端的工程文件,这个是最基本的版本,实现了客户端向服务器端发送一次数据,然后接收数据再断开连接。

2015-09-01

socket可执行程序

socket通信的客户端和服务器端的可执行程序,这个是最基本的版本,实现了客户端向服务器端发送一次数据,然后接收数据再断开连接。

2015-09-01

FilesRenameSource.rar

对文件进行批量更改后缀名的工具,使用MFC进行开发,源代码

2015-08-21

FileRename.rar

对文件进行批量更改后缀名的工具,使用MFC进行开发

2015-08-21

AddContacts

批量添加联系人,对于有很多联系人需要添加时会很有用

2015-08-18

WordFrequency源码

词频统计的程序,可以根据url查询该网页中出现次数最多的前N个单词。

2015-08-18

WordFrequency

词频统计的可执行程序。可以统计一个网页中出现次数最多的前N个单词

2015-08-18

四则运算C++实现

使用逆波兰式的方式进行表达式求值。在控制台下可进行多组数据的输入处理。

2015-08-13

matrixModelView_mac.zip

模式视图变换的测试程序,可以通过在界面上调整参数直接预览结果

2015-07-28

matrixProjection

投影变换的例子,可以通过在界面上调整参数直接预览结果。

2015-07-28

matrixModelView.zip

模式视图变换的测试代码,可以在界面上调整参数预览结果。

2015-07-28

vim教程.pdf

vim中自带的教程,将它制作成了pdf格式,方便查看

2015-01-28

计算机图形学算法

计算机图形学课程中的算法实现,包括二维和三维图形中平移,旋转,缩放的实现,DDA,中点画线法,Bressenhanm算法绘制直线,多边形扫描算法和种子扫描线算法绘制多边形,还有一个使用opengl实现漫游的程序。

2014-09-05

TestCameraEye.rar

osg中获取漫游器操作场景时任一时刻相机的位置。博客地址:http://blog.csdn.net/u012501459/article/details/36895495

2014-07-04

GenerateBMP.rar

根据给定像素点的RGB值生成bmp位图。博客地址:http://blog.csdn.net/u012501459/article/details/36699735

2014-07-03

PixelColor.rar

读取图片中所有像素处的RGB值,输出到文件中。博客地址:http://blog.csdn.net/u012501459/article/details/36698033

2014-07-03

TestPng.rar

osg使用png或gif格式的图片实现透明效果。博客地址:http://blog.csdn.net/u012501459/article/details/36695977

2014-07-03

TestCone.rar

osg中圆锥的使用,包括一些参数设置。博客地址:http://blog.csdn.net/u012501459/article/details/36672487

2014-07-03

TestCamera

osg中相机参数设置无效的解决办法,原文博客地址:http://blog.csdn.net/u012501459/article/details/36666305

2014-07-03

MFCCompositeViewer.rar

MFC中使用多窗口的例子。OSG自带的例子有使用MFC的,也有使用多窗口的,但是将两者简单结合在一起会出现问题,这个是解决了问题的代码。

2014-01-06

log4plus_x64_vs2008.rar

自己编译的64位的可以在VisualStudio 2008中使用的log4cplus的bin,lib,include文件。

2013-12-31

log4cplus_x86_vs2008.rar

自己编译的32位的可以在VisualStudio 2008中使用的log4cplus的bin,lib,include文件。

2013-12-31

glaux.h glaux.lib gluax.dll

glaux库的.h,.lib,.dll文件

2013-12-02

重构_改善既有代码的设计

2010版的《重构 改善既有代码的设计》,清晰度还可以。

2013-10-29

实现列表控件控制的属性页

实现列表控件控制的属性页,效果图见http://blog.csdn.net/u012501459/article/details/12994013

2013-10-24

socket工程文件重叠IO事件通知版本

socket通信的客户端和服务器端的工程文件,基于重叠IO事件通知技术,实现了多个客户端向服务器端持续发送数据

2015-09-02

socket通信可执行程序重叠IO事件通知版本

socket通信的客户端和服务器端的可执行程序,基于重叠IO事件通知技术,实现了多个客户端向服务器端持续发送数据

2015-09-02

socket通信可执行程序select版本

socket通信的客户端和服务器端的可执行程序,基于select的多路复用技术,实现了多个客户端向服务器端持续发送数据

2015-09-01

socket工程文件select版本

socket通信的客户端和服务器端的可执行程序,基于select的多路复用技术,实现了多个客户端向服务器端持续发送数据

2015-09-01

socket工程文件多线程版本

socket通信的客户端和服务器端的工程文件,这个是多线程版本的,实现了多个客户端向服务器端持续发送数据

2015-09-01

socket多线程版本

socket通信的客户端和服务器端的可执行程序,这个是多线程版本的,实现了多个客户端向服务器端持续发送数据

2015-09-01

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除