Welcome 微信登录

首页 / 软件开发 / C++

一种自动反射消息类型的 Google Protobuf 网络传输方案

一种自动反射消息类型的 Google Protobuf 网络传输方案

一种自动反射消息类型的 Google Protobuf 网络传输方案2014-04-03 cnblogs 陈硕这篇文章要解决的问题是:在接收到 protobuf 数据之后,如何自动创建具体的 Protobuf Message 对象 ,再做的反序列化。“自动”的意思是:当程序中新增一个 protobuf Message 类型时,这部分代码不 需要 修改,不需要自己去注册消息类型。其实,Google Protobuf 本身具有很强的反射...
通过击鼓传花程序来对比 muduo 与 libevent2 的事件处理效

通过击鼓传花程序来对比 muduo 与 libevent2 的事件处理效

通过击鼓传花程序来对比 muduo 与 libevent2 的事件处理效2014-04-03 陈硕 前面我们比较了 muduo 和 libevent2 的吞吐量,得到的结论是 muduo 比 libevent2 快 18%。有 人会说,libevent2 并不是为高吞吐的应用场景而设计的,这样的比较不公平,胜之不武。为了公平起 见,这回我们用 libevent2 自带的性能测试程序(击鼓传花)来对比 muduo 和 libevent2 在高并发 情况下的 ...
关于 TCP 并发连接的几个思考题与试验

关于 TCP 并发连接的几个思考题与试验

关于 TCP 并发连接的几个思考题与试验2014-04-03 csdn博客 陈硕前几天我在新浪微博上出了两道有关 TCP 的思考题,引发了一场讨论 http://weibo.com/1701018393/eCuxDrta0Nn 。第一道初级题目是:有一台机器,它有 一个 IP,上面运行了一个 TCP 服务程序,程序只侦听一个端口,问:从理论上讲(只考虑 TCP/IP 这 一层面,不考虑IPv6)这个服务程序可以支持多少并发 TCP 连接?答 65536 上...
如何用muduo实现memcached协议

如何用muduo实现memcached协议

如何用muduo实现memcached协议2014-04-03 陈硕 最近花了两天时间用 muduo 部分实现了 memcached 服务器协议,代码位于 examples/memcached/server,能通过 memcached 的大部分测试用例(incr/decr 还没有实现)。这不是 memcached 的替代品(它没有实现LRU和超时功能,也没有实现二进制协议,更没有自己管理内存),而是一个网络编程的示例(代码只有 1000 行,比 memca...
如何在ubuntu 12.04上安装Qt 4.8.4

如何在ubuntu 12.04上安装Qt 4.8.4

如何在ubuntu 12.04上安装Qt 4.8.42014-04-03最近的项目使用嵌入式linux系统开发,开发环境在ubuntu 12.04搭建,这个版本的lubuntu,优点有,但缺点也不少,不建议新手做开发环境。整个嵌入式Qt 4.8.4编译也算比较顺利,但也有多个要注意的地方,纪录下来,做为备忘录,也为大家做参考,还是那句话:“折腾并快乐着”。这里提醒大家一下,编译内核和qt4.8.4的arm-linux-gcc用一个版...
QT在Windows下如何制作安装文件和发布程序

QT在Windows下如何制作安装文件和发布程序

QT在Windows下如何制作安装文件和发布程序2014-04-03QT程序设计完毕时,我们就要发布自己的程序,发布程序有两种方法:一是静态编译,二是制作程序安装包。静态编译好麻烦,我从来没有成功过,所以我用了动态编译方法,设计完成时,用release方式编译程序,把生成的EXE文件和其依赖的库放在一个文件夹中,用setup2go生成安装文件。好,我们启动程序,选择文件>>>>>>>新建工程。保存工程项目出现了安装...
一个用于 DirectX 编程的现代 C++ 库

一个用于 DirectX 编程的现代 C++ 库

一个用于 DirectX 编程的现代 C++ 库2014-04-03 MSDN Kenny Kerr我写过很多 DirectX 代码,也写过很多关于 DirectX 的文章。我甚至还编写过关于 DirectX 的在线培训课程。它其实并不像某些开发人员所说的那么难以理解。学习曲线一定会有,但一旦您过了这道坎,就不难理解 DirectX 的工作方式及其为何要如此工作的原因了。不过我也承认,DirectX 系列 API 的易用性应该更高些。几天前,我决定着手修补...
借助 C++ 进行 Windows 开发:Windows 运行时应用程序模型

借助 C++ 进行 Windows 开发:Windows 运行时应用程序模型

借助 C++ 进行 Windows 开发:Windows 运行时应用程序模型2014-04-03 MSDN Kenny Kerr我们的生活充满了抽象。作为开发人员,如果我们不了解抽象的定义就去使用它,则通常会让我们 陷入困境。抽象有时是零散的,且无法完全隐藏基本复杂性。别误解我的意思,其实抽象是很有用的。 它们能为用户和开发人员提供帮助,而如果您深入研究您通常依赖的抽象来了解其运作方式,则会让您 受益匪浅。此外,承认这一现实的库通常比不承认这一现实的库更为...
GPGPU OpenCL编程步骤与简单实例

GPGPU OpenCL编程步骤与简单实例

GPGPU OpenCL编程步骤与简单实例2014-04-03 博客园 旭东的博客1.OpenCL概念OpenCL是一个为异构平台编写程序的框架,此异构平台可由CPUI、GPU或其他类型的处理器组成。 OpenCL由一门用于编写kernels (在OpenCL设备上运行的函数)的语言(基于C99)和一组用于定义并 控制平台的API组成。OpenCL提供了两种层面的并行机制:任务并行与数据并行。2.OpenCL与CUDA的区别不同点:OpenCL是通用的异构...
C++使用Uniscribe进行文字自动换行的计算和渲染

C++使用Uniscribe进行文字自动换行的计算和渲染

C++使用Uniscribe进行文字自动换行的计算和渲染2014-11-01 cnblogs 陈梓瀚(vczh)Uniscribe是Windows 2000以来就存在于WinAPI中的一个库。这个库能够提供给我们关于字符串渲染的很多信息,譬如说哪里可以换行啦,渲染的时候字符的顺序应该是什么样子啦,还有每一个字符的大小什么的。关于Uniscribe的资料可以在http://msdn.microsoft.com/en-us/library/windows/de...
可配置语法分析器开发纪事(一) 构造语法树

可配置语法分析器开发纪事(一) 构造语法树

可配置语法分析器开发纪事(一) 构造语法树2014-11-01 cnblogs 陈梓瀚(vczh)就像之前的博客文章所说的,(主要还是)因为GacUI的原因,我决定开发一个更好的可配置轻量级语法分析器来代替之前的落后的版本。在说这个文章之前,我还是想在此向大家推荐一本《编程语言实现模式》,这的确是一本好书,让我相见恨晚。其实说到开发语法分析器,我从2007年就已经开始在思考类似的问题了。当时C++还处于用的不太熟练的时候,难免会做出一些傻逼的事情,不过总的...
可配置语法分析器开发纪事(二) 构造符号表

可配置语法分析器开发纪事(二) 构造符号表

可配置语法分析器开发纪事(二) 构造符号表2014-11-01 cnblogs 陈梓瀚(vczh)上一篇博客讲到了构造语法树的问题。有朋友在留言问我,为什么一定要让语法分析器产生语法树,而不是让用户自己决定要怎么办呢?在这里我先解答这个问题。1、大部分情况下都是真的需要有语法树2、如果要直接返回计算结果之类的事情的话,只需要写一个visitor运行一下语法树就好了,除去自动生成的代码以外(反正这不用人写,不计入代价),代码量基本上没什么区别3、加入语法树可...
<< 141 142 143 144 145 146 147 148 149 150 >>