上一页 1 2 3 4 5 6 7 ··· 16 下一页
摘要: 这篇应该能结,简图如下。 上一篇讲到了uv__work_submit方法,接着写了。 从post开始。 wq就是上一篇讲的线程都会用到的那个队列,这里负责插入任务,worker中取出任务。 没想到post到这里没了,这点东西并到上一篇就好了。以后写这种系列博客还是先规划一下,不能边看源码边写…… 函 阅读全文
posted @ 2019-05-13 17:30 书生小龙 阅读(850) 评论(0) 推荐(1) 编辑
摘要: 好像博客有观众,那每一篇都画个图吧! 本节简图如下。 上一篇其实啥也没讲,不过node本身就是这么复杂,走流程就要走全套。就像曾经看webpack源码,读了300行代码最后就为了取package.json里面的main属性,导致我直接弃坑了,垃圾源码看完对脑子没一点好处。回头看了我之前那篇博客,同步 阅读全文
posted @ 2019-05-10 19:13 书生小龙 阅读(946) 评论(0) 推荐(1) 编辑
摘要: 上一篇讲了轮询的边角料,这篇进入正题。(竟然真有人看我博客,上两个图给你们整理下思路) 这是轮询总流程图。 下图为本节内容简图。 Poll for I/O The loop blocks for I/O. At this point the loop will block for I/O for t 阅读全文
posted @ 2019-05-07 18:21 书生小龙 阅读(790) 评论(0) 推荐(0) 编辑
摘要: 好久没写东西了,过了一段咸鱼生活,无意中想起了脉脉上面一句话: 始终保持自己的竞争力。所以,继续开写! 一般的JavaScript源码看的已经没啥意思了,我也不会写什么xx入门新手教程,最终决定还是啃原来的硬骨头,从外层libuv => node => v8一步步实现原有的目标吧。 libuv核心还 阅读全文
posted @ 2019-05-06 20:30 书生小龙 阅读(830) 评论(2) 推荐(1) 编辑
摘要: 终于可以填上坑了。 简单回顾一下之前JS篇内容,每一次setTimeout的调用,会在一个对象中添加一个键值对,键为延迟时间,值为一个链表,将所有该时间对应的事件串起来,图如下: 而每一个延迟键值对的触发,则是在链表头生成的时候就已经开始了,如下: 回顾完毕。 与JS篇一样,这一节也简单介绍libu 阅读全文
posted @ 2018-12-07 17:57 书生小龙 阅读(844) 评论(0) 推荐(0) 编辑
摘要: 在Timer模块中有提到,libuv控制着延迟事件的触发,那么必须想办法精确控制时间。 如果是JS,获取当前时间可以直接通过Date.now()得到一个时间戳,然后将两段时间戳相减得到时间差。一般情况下当然没有问题,但是这个方法并不保险,因为本地计算机时间可以修改。 libuv显然不会用这么愚蠢的办 阅读全文
posted @ 2018-12-07 03:04 书生小龙 阅读(1992) 评论(0) 推荐(0) 编辑
摘要: 面试的间隙回头复习了一下node,感觉node就像一个胶带,把V8和libuv粘在了一起。 V8毫无疑问,负责解析执行JavaScript,相当于语言层面的桥梁;而libuv则是负责操作系统底层功能的封装,例如基于IOCP的event loop、file system、non-blockiong n 阅读全文
posted @ 2018-11-28 02:45 书生小龙 阅读(1574) 评论(0) 推荐(0) 编辑
摘要: 其实这个没什么必要写,大概是压力越大,结束后需要释放的能量也越多,边看着直播边随便写点什么吧。 一面是在15号,内容已经记不太清了,但是那份紧张刺激的感觉却一直在。一面是视频面试,我的台式并没有摄像头,只能用又老又破的本本。本本陪伴着我写毕业论文,没想到还要陪我找工作,当年6开梦幻加斗鱼直播都能吃下 阅读全文
posted @ 2018-11-22 22:31 书生小龙 阅读(1588) 评论(2) 推荐(0) 编辑
摘要: 还是要diss一下周六的平安总部面试,面试体验渣到极点,以至于我已经在心里把所有平安职位拉黑。 二面直接放点题目吧,作为记录,所有题目都需要现场手写,痛苦。 自我介绍的时候,面试官问了下有什么东西特别有成就感,我就说原生实现了Datepicker的插件,然后就开始特别细节的问。 源代码比较长,贴个地 阅读全文
posted @ 2018-11-20 01:24 书生小龙 阅读(3405) 评论(8) 推荐(4) 编辑
摘要: 大厂就是不一样,面一次打击一次,感觉可以买票回家过年了…… 目前情况是过了两轮,还剩最后一轮技术面,总结一下面试题和自己的解答。 一面记不太清了,只记得几个。 首先是懒加载原理,写伪代码。 这里贴一个自己练习时候写的vue类似懒加载的指令: 使用方法,在需要的组件直接用mixin混入,然后在dom上 阅读全文
posted @ 2018-11-20 00:31 书生小龙 阅读(2961) 评论(0) 推荐(2) 编辑
上一页 1 2 3 4 5 6 7 ··· 16 下一页