随笔分类 -  C++

vs2008编译FileZilla客户端源码
摘要:vs2008编译FileZilla客户端源码 下载FileZilla客户端源码,下载地址https://download.filezilla-project.org/。 FileZilla客户端解决方案包含3个工程,分别是: engine,核心服务,编译后在lib文件夹下生成engine_unico 阅读全文

posted @ 2016-12-13 11:57 炽离 阅读(2713) 评论(1) 推荐(0)

vs2008编译wxWidgets 2.8.12
摘要:用vs2008编译wxWidgets 2.8.12 FileZilla客户端源码3.5.3及以上版本依赖wxWidgets 2.8.12或更高版本,因此,编译FileZilla客户端首先需要编译wxWidgets 2.8.12。本文简单介绍一下VS2008编译wxWidgets 2.8.12的步骤和 阅读全文

posted @ 2016-12-12 14:10 炽离 阅读(1529) 评论(0) 推荐(0)

windows线程池四种情形(win核心读书笔记)
摘要:windows线程池四种情形(win核心读书笔记) Mircosoft从Windows2000引入线程池API,并在Vista后对线程池重新构架,引入新的线程池API。以下所有线程池函数均适用于Vista以后的版本。 用Windows提供的线程池函数有以下几个好处:1,不必要用CreateThrea 阅读全文

posted @ 2016-12-03 20:00 炽离 阅读(8603) 评论(1) 推荐(1)

winsock编程IOCP模型实现代码
摘要:winsock编程IOCP模型实现代码 话不多说,上代码。借鉴《windows核心编程》部分源码和CSDN小猪部分代码。 stdafx.h依赖头文件: 其中,TaskSvc.h、Singleton.h源码可以在我的blog里面找到。 IOCPWrapper.h源码: OverlappedIOInfo 阅读全文

posted @ 2016-12-02 17:55 炽离 阅读(5921) 评论(0) 推荐(0)

OVERLAPPED相关的socket函数介绍
摘要:OVERLAPPED相关的socket函数介绍 上一篇文章介绍了《Windows核心编程》OVERLAPPED结构与内核对象IOCompletionPort相关概念,见http://www.cnblogs.com/hgwang/p/6116398.html。socket也是一种设备描述符,也适用于O 阅读全文

posted @ 2016-12-01 14:29 炽离 阅读(3905) 评论(0) 推荐(0)

异步设备IO:OVERLAPPED和IOCompletionPort
摘要:异步设备IO:OVERLAPPED和IOCompletionPort 本文内容为《windows核心编程》第10章内容的总结,仅记录一些本人感兴趣的内容。 1:OVERLAPPED “overlapped”的意思是执行IO请求的事件与线程执行其他任务的时间是重叠的(overlapped)。 over 阅读全文

posted @ 2016-11-30 17:09 炽离 阅读(2572) 评论(0) 推荐(0)

winsock编程WSAEventSelect模型
摘要:winsock编程WSAEventSelect模型 WSAEventSelect模型和WSAAsyncSelec模型类似,都是用调用WSAXXXXXSelec函数将socket和事件关联并注册到系统,并将socket设置成非阻塞模式。二者不同之处在于socket事件的通知方法:WSAAsyncSel 阅读全文

posted @ 2016-11-25 17:35 炽离 阅读(8038) 评论(0) 推荐(1)

工作线程基类TaskSvc
摘要:工作线程基类TaskSvc 前端时间用ACE写代码,发ACE_Task确实好用。不但能提供数量一定的线程,还能够让这些继承的线程函数自由访问子类的private和protected变量。此外,ACE_Task还提供了ACE_Message_Block的消息块及消息队列,能够自主定义消息,实现数据的异 阅读全文

posted @ 2016-11-23 17:19 炽离 阅读(959) 评论(0) 推荐(0)

winsock编程WSAAsyncSelect模型
摘要:winsock编程WSAAsyncSelect模型 WSAAsyncSelect模型也称异步选择模型,其核心函数是WSAAsyncSelect。它可以用来在一个socket上接收以windows消息为基础的网络事件。它提供了读写数据的异步通知功能,但不提供异步数据传送。WSAAsyncSelect模 阅读全文

posted @ 2016-11-23 16:47 炽离 阅读(8939) 评论(0) 推荐(0)

winsock编程select模型
摘要:winsock编程select模型 网络服务端连接数量过多时,为每一个连接申请一个线程会让机器性能急剧下降(大多说是因为线程在用户态和内核态之间切换会占用大量的CPU时间片)。为了解决多线程带来的性能下降问题,windows提供了5种网络编程模型。这其中,最简单的就是select模型。 select 阅读全文

posted @ 2016-11-22 20:52 炽离 阅读(2549) 评论(0) 推荐(0)

socket编程,简单多线程服务端测试程序
摘要:socket编程,简单多线程服务端测试程序 前些天重温了MSDN关于socket编程的WSAStartup、WSACleanup、socket、closesocket、bind、listen、accept、recv、send等函数的介绍,今天写了一个CUI界面的测试程序(依赖MFC)作为补充。程序功 阅读全文

posted @ 2016-11-21 17:29 炽离 阅读(2952) 评论(0) 推荐(0)

模板singleton模式的C++实现
摘要:模板singleton模式的C++实现 近期回过头整理了一下singleton模式,看了别人写的关于singleton的介绍。发现这个singleton模式虽然简单,但要写一个稳定/线程安全/泛型的模板singleton,还是需要一点技巧的。经过整理,要写一个模板的singlton至少需要以下几个知 阅读全文

posted @ 2016-11-21 16:31 炽离 阅读(4422) 评论(0) 推荐(0)

windows socket函数详解
摘要:windows socket函数详解 近期一直用第三方库写网络编程,反倒是遗忘了网络编程最底层的知识。因而产生了整理Winsock函数库的想法。以下知识点均来源于MSDN,本人只做翻译工作。虽然很多前辈都做已了此类工作,但亲力亲为总记得清楚点。 0:函数库头文件 1:WSAStartup 初始化Ws 阅读全文

posted @ 2016-11-18 14:09 炽离 阅读(45465) 评论(0) 推荐(3)

ACE_Message_Block消息数据类
摘要:ACE_Message_Block ACE_Message_Block用于构建“固定”和“可变”长度的消息。ACE_Message_Block可以将多条消息连接在一起,形成一个链表,从而支持复合消息。ACE_Message_Block内部结构图如下: 头文件“Message_Block.h”。 1: 阅读全文

posted @ 2016-10-08 22:23 炽离 阅读(3316) 评论(0) 推荐(0)

ACE Socket Wrapper Facade
摘要:ACE Socket Wrapper Facade 1:Socket API 1.1 IPC(进程间通信) IPC分为本地IPC(同一计算机上的不同进程)和远程IPC(网络互联的不同计算机),本地IPC的机制有共享内存(shared memory)、管道(pipe)、信号(signal)等,远程IP 阅读全文

posted @ 2016-09-19 15:25 炽离 阅读(1044) 评论(0) 推荐(0)

ACE_Event_Handler:事件响应入口
摘要:1:ACE_Event_Handler类 头文件“Event_Handler.h” 在ACE Reactor框架中,ACE_Event_Handler是所有事件处理器的基类。ACE_Event_Handler提供了一组事件处理的挂钩方法,理解和掌握这些挂钩方法的触发条件和使用方法,是ACE Reac 阅读全文

posted @ 2016-09-15 13:50 炽离 阅读(4599) 评论(0) 推荐(0)

ACE_Time_Value
摘要:头文件“Time_Value.h” 为了兼容各个平台的时间特性,ACE Reactor框架提供了ACE_Time_Value类。ACE_Time_Value的关键方法见下图3.2和表3.2、3.3: ACE_Time_Value目的是为了提供一个规范的时间表达格式,比如,规范ACE_Time_Val 阅读全文

posted @ 2016-09-15 12:15 炽离 阅读(2494) 评论(0) 推荐(0)

虚析构和虚表
摘要:首先给出调用方式 Base* b = new child; child* c = new child; 第一种情况:基类和子类的析构函数都不是虚函数。 此种情况下,基类和子类各自调用自己的析构函数。如果直接delete b,则会导致内存空间泄露。(第一句里面,先是new了一个child,child的 阅读全文

posted @ 2016-09-14 14:13 炽离 阅读(271) 评论(0) 推荐(0)

stdafx文件介绍
摘要:MSDN介绍: These files are used to build a precompiled header file Projname.pch and a precompiled types file Stdafx.obj. MSDN介绍: These files are used to 阅读全文

posted @ 2016-09-07 12:07 炽离 阅读(532) 评论(0) 推荐(0)

TinyXML用法小结
摘要:TinyXML用法小结 1. 介绍 Tinyxml的官方网址:http://www.grinninglizard.com 官方介绍文档:http://www.grinninglizard.com/tinyxmldocs/tutorial0.html 在TinyXML中,根据XML的各种元素来定义了一 阅读全文

posted @ 2016-09-02 15:21 炽离 阅读(32087) 评论(0) 推荐(3)

导航