自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(12)
  • 资源 (4)
  • 收藏
  • 关注

原创 VC++多线程编程 (转载)

十个例子清晰列举啦多线程编程的奥妙。 VC中多线程使用比较广泛而且实用,在网上看到的教程.感觉写的挺好.一、问题的提出编写一个耗时的单线程程序:  新建一个基于对话框的应用程序SingleThread,在主对话框IDD_SINGLETHREAD_DIALOG添加一个按钮,ID为IDC_SLEEP_SIX_SECOND,标题为“延时6秒”,添加按钮的响应函数,代码如下:void CSingleThreadDlg::OnSleepSixSecond(){Sle

2011-05-29 12:41:00 703

原创 Unicode字符列表(超完整)

<br />注:除非有特别指明,否则以下符号皆属“半角”而非“全角”。<br /> <br />代码 显示 描述 <br />U+0020  空格 <br />U+0021 ! 叹号 <br />U+0022 " 双引号 <br />U+0023 # 井号 <br />U+0024 $ 价钱/货币符号 <br />U+0025 % 百分比符号 <br />U+0026 & 英文“and”的简写符号 <br />U+0027 ' 引号 <br />U+0028 ( 开 圆括号 <br />U+0029 ) 关

2011-05-28 09:08:00 35404

原创 WinSock : I/O完成端口

<br />引言<br />要想编写一个高性能的服务器应用程序,必须实现一个高效的线程模型。让太少或者太多的服务器线程来处理客户的请求,都可能导致性能问题。例如,如果一个服务器创建单个线程来处理所有的请求,那么客户端可能长期等待而得不到响应,因为服务器同一时刻只能忙于处理一个请求。当然单个线程也能并发处理多个请求,当I/O操作被启动时,它可以从一个请求切换到另一个请求,但是这种结构相当复杂,并且不能充分利用多处理器的优势。在另一个极端,服务器可以创建一个大规模的线程池,这样几乎每一个客户请求都可以由一个专门

2011-05-26 17:26:00 826

原创 WinSock重叠I/O模型

<br />一.重叠I/O的概念及应用<br />当调用ReadFile和WriteFile时,如果最后一个参数lpOverlapped设置为NULL,那么线程就阻塞在这里,直到读写完指定的数据后,它们才返回。这样在读写大文件的时候,很多时间都浪费在等待ReadFile和WriteFile的返回上面。如果ReadFile和WriteFile是往管道里读写数据,那么有可能阻塞得更久,导致程序性能下降。<br />为了解决这个问题,windows引进了重叠I/O的概念,它能够同时以多个线程处理多个I/O。其实你

2011-05-26 17:25:00 723

原创 WinSock 异步I/O模型

    如果你想在Windows平台上构建服务器应用,那么I/O模型是你必须考虑的。Windows操作系统提供了五种I/O模型,分别是:■ 选择(select);■ 异步选择(WSAAsyncSelect);■ 事件选择(WSAEventSelect);■ 重叠I/O(Overlapped I/O);■ 完成端口(Completion Port)(+线程池技术) 。    每一种模型适用于一种特定的应用场景。大家应该针对自己应用程序的需求,综合考虑到程序的扩展性和可移植性等因素,作出自己的选择。     待

2011-05-26 16:35:00 1343

原创 Socket结构区别

<br />    <br />struct sockaddr { <br />unsigned short sa_family; <br />char sa_data[14]; <br />}; <br />上面是通用的socket地址,具体到Internet socket,用下面的结构,二者可以进行类型转换 <br /><br />struct sockaddr_in { <br />short int sin_family; <br />unsigned short int sin_port; <br

2011-05-26 15:52:00 678

原创 CSocket关于连接和阻塞!!

<br />基于阻塞发送和接收二进制数据。<br />比如可以Client端发送,Server端接收<br />Server端:m_recvive. Receive(void*lpBuf,intnBufLen,intnFlags=0);<br />Client端:m_client. Send(constvoid*lpBuf,intnBufLen,intnFlags=0);<br />接着再分析一下各个类中提到的常用方法的同步特性。<br />Listen(…):执行后不管有没有连接,立即返回。<br />C

2011-05-26 00:33:00 3115 1

原创 linux环境下的c++编程

<br /> 就C++开发工具而言,与Windows下微软(VC, VS2005等)一统天下相比,Linux/Unix下C++开发,可谓五花八门,各式各样。Emacs, vi, eclipse, anjuta,kdevelop等层出不穷。<br /><br />Windows下,开发工具多以集成开发环境IDE的形式展现给最终用户。例如,VS2005集成了编辑器,宏汇编ml,C /C++编译器cl,资源编译器rc,调试器,文档生成工具, nmake。它们以集成方式提供给最终用户,对于初学者而言十分方便。但是,

2011-05-25 22:55:00 39397 3

原创 C风格struct结构体的对齐

<br />    C语言结构体对齐也是老生常谈的话题了。基本上是面试题的必考题。内容虽然很基础,但一不小心就会弄错。写出一个struct,然后sizeof,你会不会经常对结果感到奇怪?sizeof的结果往往都比你声明的变量总长度要大,这是怎么回事呢?<br />    开始学的时候,也被此类问题困扰很久。其实相关的文章很多,感觉说清楚的不多。结构体到底怎样对齐?<br />    有人给对齐原则做过总结,具体在哪里看到现在已记不起来,这里引用一下前人的经验(在没有#pragma pack宏的情况下):<b

2011-05-25 17:47:00 1108

原创 C++内存分配之NEW DELETE

<br />1)new  和  delete 必须成对出现;<br />2)new 底层调用操作系统堆内存管理函数HeapAlloc来分配堆内存;<br />3)delete 操作符底层调用API接口函数HeapFree来释放堆内存;<br /><br />数据的3种存储方式。<br />1。静态区:  全局变量或者使用static约束的变量;<br />2。堆:        程序执行时分配的内存;    如NEW操作所分配的动态内存 <br />3。栈:        函数调用,局部变量。<br />以

2011-05-18 17:40:00 837 1

原创 fstream IO流类的使用:C++读取文件txt,循环逐行输出(转)

<br />#include<iostream><br />#include<iomanip><br />#include<fstream><br /><br />usingnamespacestd;<br /><br />int main(){<br />char buffer[256];<br />ifstream myfile ("c://a.txt");<br />ofstream outfile("c://b.txt");<br /><br />if(!myfile){<br />cout<<"U

2011-05-18 12:31:00 8920 1

原创 软件系统开发中的数据交换协议

<br />当一个人要把一件事情告诉另外一个人的时候,我们可以通过电话、邮件、短信、IM工具或者当面说的方式来交流。这种方式类似于系统数据交换要通过 tcp、udp、管道等等的方式实现。当两个人交流的时候,我们需要一种共同的语言才能明白对方的意思,同样的,两个系统要交换数据,也需要定义一种双方都明白的协议,我们称为“数据交换协议”。<br /> 数据交换协议<br /> 数据交换协议的目的是让两个系统进行正确的数据交互。所以几乎各种开发语言都提供了方便使用的数据交换功能。比如说使用JAVA语

2011-05-13 23:47:00 889

Lua实例代码大全_编程实例

luacom luacurl luafilesystem lualogging luasocket luasql

2020-10-17

《C++ STL开发技术引导》配套光盘(16章全)

《C++ STL开发技术引导》配套光盘(16章全) 兄弟姐妹们 来下吧 《C++ STL开发技术引导》配套光盘源代码 VC6 全部编译通过

2011-05-18

700API函数介绍

700多个API函数详细介绍 学习API 的朋友帮助很大

2008-09-09

unix shell 最经典的学习资料

unix shell 最经典的学习资料 shell是unix的核心所在 网络上真正学习的资料不多 提供给网友们下载,希望对大家有帮助

2008-09-09

空空如也

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

TA关注的人

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