源码安装v8报错

想试试v8嵌入到c++开发 网上写编译v8的文章不多,且我觉得大部分写得不够详细。 官方Building from Source已提供安装步骤,本文没必要对里面的大部分内容再费唇舌 下文记录编译&安装v8所遇到的问题,希望能帮到大家。 v8版本:v8 6.9 系统环境: [amao@localhost x64.release]$ lsb_release -a LSB Version: :base-4.0-amd64:base-4.0-noarch:core-4.0-amd64:core-4.0-noarch:graphics-4.0-amd64:graphics-4.0-noarch:printing-4.0-amd64:printing-4.0-noarch D...
Click to read more ...

libevent 偏移读取缓存evbuffer_copyout_from

本文约定的协议包格式 红色区域:表示5个字节长度的协议包首部(PKG_HEAD)。前1字节存放标识码(TAG),后2字节存放数据内容长度(BODY_SIZE)、再后2字节存放整个网络包长度(PKG_SIZE) 蓝色区域:表示n个字节长度的数据内容(BODY), 读取一个完整网络包 Libevent 2.0.5以前,必须先drain包头信息,才能取出其中的整包长度PKG_SIZE。再将之后收到的内容数据BODY,与包头合并成一个完整的网络包。 Libevent 2.0.5以后,新增了两个接口evbuffer_copyout_from,见libevent-book evbuffer_copyout_from允许偏移pos个字节位后,从libevent输入缓存区拷贝dataLen个字...
Click to read more ...

提高工作效率的shell命令

网络上介绍linux命令的文章很多。我相信通过百度、Google都轻易地搜索出来,或者使用命令man YOUR_COMMAND,会列出YOUR_COMMAND的使用手册。再造“轮子”并不是我的意愿。本文从常见的实践使用出发,介绍一些认为能提高开发效率的操作&流程。 这个网站不错,里面有详细的命令选项说明和使用实例。 前后台切换 Windows系统里,可以通过ctrl + d、alt + tab,将应用分别切换前后台。在命令行界面系统下,使用以下将几条命令就能完成同等功能。 命令 说明 ctrl + z 将当前前台执行的命令放到后台,并且暂停 j...
Click to read more ...

unix 标准输入输出缓存

四个月前碰到一个问题。 我相信,系统为了提高程序IO效率,会先将输出流缓存起来,不会立即写到磁盘。 但感觉这个理论,不能说服我在帖子里提到了两个疑问: tail延时5-10秒,才读取到日志。(延时太长令人费解!) 部分log并不是按逻辑顺序输出。(无法接受!) 比如 PS: LOG("1"); LOGERR("2"); // 在日志文件里,2竟先打印 2 1 最近从《UNIX环境高级编程》第五章-标准IO/库读到了相关内容,认为可以解答以上2个疑问。 以下大部分内容摘自抄原文。 标准I/O提供了以下3种类型的缓冲: 全缓冲。在这种情况下,填满标准I/O缓存后才进行实际I/O操作。对于驻...
Click to read more ...

zlog运行时增加format和rule规则

zlog是一个日志库,我对它的配置化操作很感兴趣 我希望zlog能在运行时增加format和rule规则,这样做有个好处(见issues ): 相同的日志输出格式可以在运行时,统一定义。 增加这个功能尝试修改了一下。 zlog.h添加增删[format]和[rule]规则的接口(删规则还未实现) int zlog_add_format(const char *ctx); void zlog_del_format(const char *name); int zlog_add_rule(const char *ctx); void zlog_del_rule(const char *name); test目录里增加了相应的测试用例test_add_rule.c // Fil...
Click to read more ...

修复toluapp在lua5.3的整数错误

长期以来,lua number即用来表示整数类型,也用来表示浮点类型。 最近将旧工程lua从5.1.4升级到5.3.4后。发现以下问题,lua_pushnumber压入整数,该值在lua里打印却是带有“点号”浮动数 // c/c++ File int val = 1; lua_pushnumber(L, val); lua_setglobal(L, "value"); -- Lua File print(value) --5.1.4打印"1" --5.3.4打印"1.0" 出现这个问题,原因是Lua 5.3之后,官方已明确区分integer和number类型 Changes since Lua 5.2 Here are the main changes introduced...
Click to read more ...