【fork之后并不能确定究竟是哪个进程首先执行相关】
【fork后子进程会复制父进程的资源,缓冲区是父进程的资源,所以自然会复制一份】
【设备的不同缓冲属性】
【标准输出设备在正常情况下是linux中的行缓存的设备(除出错)】
【linux中写入文件流是全缓存的,也就是换行符并不会冲洗缓冲区】...
分类:
系统相关 时间:
2014-10-29 14:49:34
阅读次数:
302
swoole版本:1.7.6-stable
上一章已经分析了如何启动swServer的相关函数。本章将继续分析swServer的相关函数,
1.swServer函数分析
swServer_addListener
该函数用于在swServer中添加一个需要监听的host及port。函数原型如下:
// Server.h 438h
int swServer_addLi...
分类:
其他好文 时间:
2014-10-29 00:30:03
阅读次数:
388
Hadoop源码学习笔记(1) ——找到Main函数及读一读Configure类 前面在第一季中,我们简单地研究了下Hadoop是什么,怎么用。在这开源的大牛作品的诱惑下,接下来我们要研究一下它是如何实现的。 提前申明,本人是一直搞.net的,对java略为生疏,所以在学习该作品时,会时不时插入对....
分类:
其他好文 时间:
2014-10-29 00:03:33
阅读次数:
330
linux中的进程是个最基本的概念,进程从运行队列到开始运行有两个开始的地方,
一个就是switch_to宏中的标号1:"1:/t",//只要不是新创建的进程,几乎都是从上面的那个标号1开始的,而switch_to宏则是除了内核本身,所有的进程要
想运行都要经过的地方
另 一个就是ret_form_fork
这样看来,虽然linux的进程体系以及进程调度非常复杂,但是总体看来就是一个沙漏...
分类:
系统相关 时间:
2014-10-27 23:07:52
阅读次数:
560
本周遇到了好几个core都很有典型性。在这里和大家分享下。
相信有过Linux编程经验的人,肯定都遇到过。感觉周围人很多对core有天然的恐惧感,尤其对刚入行不久的同学来说。当然了,也有工作好几年看到core也束手无策的。今天就分析一下,core,其实大部分都是很容易解决的。如果一个core很难以复现,那么说明还是很复杂的,算是Corner case,可能需要很长时间,脑子里要有很好的运行时状态才可以(阅读源码,学习的是逻辑;将源码对应到运行时的状态,分析一些状态机的转换,再去分析可能会发生的情况)。相信前...
分类:
系统相关 时间:
2014-10-24 00:28:39
阅读次数:
255
今天呢,来研究一个功能,消息通知
(1)首先是消息推送的获得或者说是产生。
在main.java这个文件里有这样一个函数
/**
* 轮询通知信息
*/
private void foreachUserNotice() {
final int uid = appContext.getLoginUid();
final Handler handler = new Handle...
分类:
移动开发 时间:
2014-10-21 12:16:22
阅读次数:
209
终于可以正式进入Server.c模块了…… 在之前的分析中,可以看到很多相关模块的声明都已经写在了Server.h中,就是因为这些模块构成了Server的核心部分。而Server本身,则是一个最上层的对象,它包括了核心的Reactor和Factory模块,存放了消息队列的key值,控制着全部的Connection,所有PHP层面的回调函数也在这里指定;同时,Server存放了大量的属性值,这些值决...
分类:
其他好文 时间:
2014-10-16 16:53:33
阅读次数:
527
C++ STL源码之map和set依赖数据结构heap实现...
分类:
编程语言 时间:
2014-10-12 00:48:47
阅读次数:
279
这是SGI STL哈希表的实现,由于平时见到较少,因此在源代码中注释做的较为详细...
分类:
编程语言 时间:
2014-10-12 00:31:07
阅读次数:
246
C++ SGI STL提供的单向链表,现在已成为C++11标准中的forward_lsit,某些操作效率较list高...
分类:
编程语言 时间:
2014-10-11 23:58:37
阅读次数:
403