Linux系统运行源码剖析 epoll代码注释 理解了中断、等待队列、调度,你就能懂Linux的80%。 老子 转发的话,请注明出处哦:http://www.cnblogs.com/stonehat/ Linux系统内核提供了三个系统调用: include/linux/syscalls.h 其函数实 ...
分类:
系统相关 时间:
2018-03-21 00:01:57
阅读次数:
241
dashboard架构主要由一个API handler 和 五个manager构成: API handler用来处理来自客户的http请求,不同的path路由到不同的的handler处理,使用的是go restful库, 五个manager是ClienManager, AuthManager, Se ...
分类:
Web程序 时间:
2018-03-15 22:13:36
阅读次数:
542
HashMap底层数据结构为哈希表 初始容量 static final int DEFAULT_INITIAL_CAPACITY = 1 << 4; // aka 16 最大容量 默认加载因子 链表最大长度,桶节点数超过最大长度链表将转为红黑树结构 桶节点数小于该值则转回为链表结果 扩容的临界点,当 ...
分类:
其他好文 时间:
2018-03-12 21:17:34
阅读次数:
161
Spark中的任务管理是很重要的内容,可以说想要理解Spark的计算流程,就必须对它的任务的切分有一定的了解。不然你就看不懂Spark UI,看不懂Spark UI就无法去做优化...因此本篇就从源码的角度说说其中的一部分,Stage的切分——DAG图的创建 先说说概念 在Spark中有几个维度的概 ...
分类:
其他好文 时间:
2018-03-07 17:33:37
阅读次数:
209
BasicDataSource.getConnection() createDataSource() createConnectionFactory():创建连接池工厂 createPoolableConnectionFactory() createConnectionPool():创建对象池保存活 ...
分类:
数据库 时间:
2018-03-02 16:43:39
阅读次数:
389
本文参考华庭(庄明强)的ptmalloc2 源码剖析 简介: ptmalloc实现了malloc(),free()以及一组其他函数,以提供动态内存管理,同时支持多线程。分配器处于用户空间和内核空间之间,响应用户的分配请求,向操作系统申请内存。总体思想是先“批发”一块大内存,而后“零售”给用户,同时也 ...
分类:
其他好文 时间:
2018-02-22 21:31:12
阅读次数:
287
《Python源码剖析》一书现在很难买到,目前大部分都是电子书。 为了更好地利用Python语言,无论是使用Python语言本身,还是将Python与C/C++交互使用,深刻理解Python的运行原理都是非常重要的。本书以CPython为研究对象,在C代码一级,深入细致地剖析了Python的实现。书 ...
分类:
编程语言 时间:
2018-02-02 20:19:56
阅读次数:
178
前面已经介绍了全局函数construct()和destory(),分别完成指定内存地址上的对象构造和析构操作。下面主要是介绍空间配置器中关于空间配置和释放的操作。STL中空间配置和释放由负责。SGI对此的设计哲学为: 向system heap要求空间 考虑多线程(multi threads)状态 考 ...
分类:
其他好文 时间:
2018-01-31 01:09:31
阅读次数:
176
SGI虽然定义了名为allocator的配置器,但从未使用过。SGI的allocator只是包装了C++的::operatpor new和::operator delete,效率不高。STL中内存配置操作由alloc::allocate()负责,内存释放操作由alloc::deallocate()负 ...
分类:
其他好文 时间:
2018-01-30 21:15:56
阅读次数:
174
空间配置器(allocator)这个概念在阅读源码之前我根本没有听过,原以为内存分配都是使用new和delete运算符(注意和operator new、placement new、operator delete以及placement delete不同)。在实际使用STL编程时也很少会遇到自己去实现一 ...
分类:
其他好文 时间:
2018-01-30 00:23:15
阅读次数:
172