原文:浅析libuv源码-编译启动

面试的间隙回头复习了一下node,感觉node就像一个胶带,把V 和libuv粘在了一起。 V 毫无疑问,负责解析执行JavaScript,相当于语言层面的桥梁 而libuv则是负责操作系统底层功能的封装,例如基于IOCP的event loop file system non blockiong network等。简单来说node将两者结合在一起,赋予JS操作底层方法的能力,扩大了这门语言的应用 ...

2018-11-28 02:45 0 858 推荐指数:

查看详情

浅析libuv源码-node事件轮询解析(1)

  好久没写东西了,过了一段咸鱼生活,无意中想起了脉脉上面一句话: 始终保持自己的竞争力。所以,继续开写!   一般的JavaScript源码看的已经没啥意思了,我也不会写什么xx入门新手教程,最终决定还是啃原来的硬骨头,从外层libuv => node => v8一步步实现原有 ...

Tue May 07 04:30:00 CST 2019 2 421
浅析libuv源码-node事件轮询解析(3)

  好像博客有观众,那每一篇都画个图吧!   本节简图如下。   上一篇其实啥也没讲,不过node本身就是这么复杂,走流程就要走全套。就像曾经看webpack源码,读了300行代码最后就为了取package.json里面的main属性,导致我直接弃坑了,垃圾源码看完对脑子没一点 ...

Sat May 11 03:13:00 CST 2019 0 466
浅析libuv源码-获取精确时间

  在Timer模块中有提到,libuv控制着延迟事件的触发,那么必须想办法精确控制时间。   如果是JS,获取当前时间可以直接通过Date.now()得到一个时间戳,然后将两段时间戳相减得到时间差。一般情况下当然没有问题,但是这个方法并不保险,因为本地计算机时间可以修改。   libuv显然 ...

Fri Dec 07 11:04:00 CST 2018 0 1089
编译libuv

windows:   安装python   安装gyp     gyp是google的项目项目构建工具。下载地址https://github.com/turbulenz/gyp,下载解压缩后,在文件夹中运行setup.py install就安装好了   编译libuv ...

Wed Feb 01 02:20:00 CST 2017 0 1590
libuv源码分析(1)

libuv我在今年四月份的时候开始接触,一开始也遇到了很多坑,但后来理解并遵守了它的设计思想,一切就变得很方便。这几天开始着手精读它的源码,本着记录自己的学习痕迹,也希望能增加别人搜索相关问题结果数的目的,因此就有了这些东西,这个系列至少会有四篇,后续再说吧。 那么它是什么,一个高效轻量的跨平台 ...

Sat Jul 16 10:47:00 CST 2016 1 8182
libuv的交叉编译

libuv的交叉编译 希望在arm linux下研究libuv,首先需要解决libuv编译问题,在Linux机器上交叉编译libuv来。 1.环境 Host环境:Ubuntu 18.04.5 (PC) 编译工具链:arm-himix200-linux(解包 ...

Tue Nov 23 00:02:00 CST 2021 0 791
libuv源码分析(2)

这一篇来分析libuv的四个特殊的持续请求(uv_handle_t族),uv_idle_t,uv_check_t,uv_prepare_t,uv_async_t。它们直接以强类型保存在uv_loop_t中,而不像其它的持续请求保存在handle_queue中,也是最简单的持续请求。 在实现中 ...

Tue Jul 19 23:56:00 CST 2016 0 3675
如何从源码启动编译IoTSharp

IoTSharp 项目是一个开源物联网平台,数据库使用PostgreSQL , 后端使用 Asp.Net Core 2.2 ,前端使用 vue-element-admin , 下面我们介绍如何启动项目。 1、安装数据库, 根据你的系统,前往 https ...

Wed Jun 26 01:22:00 CST 2019 0 749
 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM