会员
众包
新闻
博问
闪存
赞助商
HarmonyOS
Chat2DB
所有博客
当前博客
我的博客
我的园子
账号设置
会员中心
简洁模式
...
退出登录
注册
登录
Escape The Well
博客园
首页
新随笔
联系
订阅
管理
上一页
1
2
3
4
5
下一页
2016年3月11日
C++类的成员函数对应的链接器符号的解析
摘要: 在讨论之前,先对一些本文可能涉及到的与链接器符号解析相关的基础知识作简要介绍。请注意,这些论述都是针对 gcc (C语言)而言的。 1. 编译器会导出每个编译单元中的全局符号(即全局链接器符号; 全局变量、全局函数具有全局链接器符号,可被其他编译单元访问,具有外部链接属性),这些符号在链接阶段完成解
阅读全文
posted @ 2016-03-11 02:05 william-cheung
阅读(1339)
评论(0)
推荐(0)
2016年1月12日
Scalable Global ID Generator Design
摘要: 此为某国外大公司系统设计面试题目 :)
阅读全文
posted @ 2016-01-12 14:23 william-cheung
阅读(408)
评论(0)
推荐(0)
2015年9月27日
欧拉回路 (Euler Circuit) POJ 1780
摘要: http://poj.org/problem?id=1780 相关概念和算法参考: https://www.math.ku.edu/~jmartin/courses/math105-F11/Lectures/chapter5-part2.pdf http://web.info.uvt.ro/~idr
阅读全文
posted @ 2015-09-27 23:12 william-cheung
阅读(525)
评论(0)
推荐(0)
2015年9月23日
深入理解函数内静态局部变量初始化
摘要: 函数内部的静态局部变量的初始化是在函数第一次调用时执行; 在之后的调用中不会对其初始化。 在多线程环境下,仍能够保证静态局部变量被安全地初始化,并只初始化一次。下面通过代码来分析一些具体的细节: 通过观察 gcc 4.8.3 为上述代码生成的汇编代码, 我们可以看到编译器生成了具有如下语义的代码:
阅读全文
posted @ 2015-09-23 02:20 william-cheung
阅读(8525)
评论(0)
推荐(1)
2015年9月13日
memcached 线程模型
摘要: memcached 线程模型如下图所示memcached 线程可分为两种,一是负责基本事件处理(如启动时间更新,连接请求等)和内存管理等的线程, 二是负责网络读写请求处理的线程即 worker threads 。这里只对 worker threads 进行讨论。在分析之前,先看一下相关的数据结构和变...
阅读全文
posted @ 2015-09-13 18:01 william-cheung
阅读(873)
评论(0)
推荐(0)
2015年9月11日
memcached 基于libevent的事件处理
摘要: 1. libevent 在 memcached 中 libevent 被用来处理网络事件(连接请求,读和写) 或者被用来实现定时器。使用 libevent 需要包含头文件 event.h, 并且在 GCC 链接时需要使用选项 -levent 相关函数的函数原型:/* before usin...
阅读全文
posted @ 2015-09-11 17:34 william-cheung
阅读(1297)
评论(0)
推荐(0)
2015年9月3日
POJ 3258 二分答案
摘要: http://poj.org/problem?id=3258#include #include using namespace std;#define N 50002int L, n, m;int rock[N];int solve() { // rock[i] is the dist...
阅读全文
posted @ 2015-09-03 21:06 william-cheung
阅读(165)
评论(0)
推荐(0)
2015年8月28日
Prototype 模式示例代码 (C++)
摘要: 在某公司使用的框架源代码里看到了 Prototype 模式, 这里把代码提炼总结一下:// --------------------------------------------------------------------------------------/** Abstract.h **/...
阅读全文
posted @ 2015-08-28 19:19 william-cheung
阅读(300)
评论(0)
推荐(0)
2015年8月19日
offsetof 和 container_of
摘要: offsetof 和 container_of 是两个常见的与结构或类相关的宏,其定义有一定的技巧性,这里总结一下。1. offsetofoffsetof 是定义在头文件 stddef.h (cstddef in C++) 中的一个宏, 用于计算结构体(struct)或联合体(union) 成员的地...
阅读全文
posted @ 2015-08-19 01:03 william-cheung
阅读(1776)
评论(0)
推荐(0)
2015年7月12日
二进制整数中的“1”
摘要: 这里主要通过一些位运算的技巧来找出一个整数的二进制表示中1的个数或其中某些特殊的1的位置。1 的个数求二进制表示中1的个数存在时间复杂度为O(n)(n为1的个数)的算法。 其要点是 若整数 x 不为0, 表达式(指C语言表达式) x&(x-1) 的运算结果是将 x 的二进制表示中最右侧的1消除后的值...
阅读全文
posted @ 2015-07-12 22:25 william-cheung
阅读(596)
评论(0)
推荐(0)
上一页
1
2
3
4
5
下一页
公告