星空下,月光前

我也来歪个脖~

小拉菲,保佑我面试顺利吧~~~

转角遇到喵~

Swoole源码学习记录(三)——三种MemoryPool(下)

接下来是RingBuffer。这相当于一个循环数组,每一次申请的一块内存在该数组中占据一个位置,这些内存块是可以不等长的,因此每个内存块需要有一个记录其长度的变量。这里贴出swRingBuffer_head结构体的代码:

typedef struct _swRingBuffer_item

{

    volatileuint32_t lock;

    volatileuint32_t length;

} swRingBuffer_head;

每一个结构体代表一个RingBuffer中的内存块,其中lock...

Swoole源码学习记录(二)——三种MemoryPool(上)

Swoole中为了更好的进行内存管理,减少频繁分配释放内存空间造成的损耗和内存碎片,Rango设计并实现了三种不同功能的MemoryPool:FixedPool,RingBuffer和MemoryGlobal。

Rango声明了一个swMemoryPool结构体来表示一个内存池,该结构体在swoole.h头文件中501-507行声明,结构如下:

typedef struct _swMemoryPool

{

    void*object;

    void*(*alloc)(struct _swMemoryPool...

凡人,还不快把罐头给本女王呈上来!

来杭州一个多月,终于遇到了比较凉爽的天气。公司的工作要比想象中更简单一些,也让我有了足够的时间去体验更多的事。
新领养了一只猫咪,曾经是一只流浪猫,很警惕,为了喂它手上被抓了多少道o>_
现在还是会躲在家里的角落里,不过已经比刚来的时候要好了很多。我等着哪一天它主动从角落里出来,小香香,乖哦

Swoole源码学习记录(一)——进程间共享数据ShareMemory 和 MemoryPool

我接触PHP的时间不长,最开始只认为PHP是用来做网站开发,是一个比JSP要简单的语言。后来,因为工作需要,一位学长建议我使用Ngnix + PHP 搭建应用服务器,并建议使用现有的框架。一番搜索之下,我意外发现了Swoole http://www.swoole.com/ 

接下来的半年里,我一直使用Swoole扩展作为我的服务器核心。Swoole稳定而高效的性能以及优秀的架构设计使我的开发变得简单、高效。因此,我希望能够更加深入的了解Swoole的核心,学习它的架构设计,也能锻炼自己的C语言能力。

因此,我将不定期更细这一系列,将我在阅读、理解Swoole源码过程中的...

启航

昨天,从部门BOSS的办公室出来,我长长舒了一口气。从3月12日网上报名,到8月13日转正面试,我用了5个月的时间拿下了阿里巴巴的实习和正式offer。一个多月前我还只是一名大三学生,现在,我已经不用再为了校招而忙碌奔波了。

只当我自己记录了一篇流水账吧。

3月,在网上看到了阿里招实习生的网站,我当即填写了简历。当时我并没有直接选择阿里的打算(其实是另外投递了腾讯和百度的内推掩面……)我还是想能有这样一次经历来锻炼一下自己。

在填写简历内容的时候我就犯了难,虽然大学期间也参加了不少比赛,但大多都是没什么名气的小比赛,拿到的也都是二等奖三等奖,做的项目虽然多,但好像也没有能拿得出手的(...

© 星空 | Powered by LOFTER