腾讯云
开发者社区
文档
建议反馈
控制台
登录/注册
首页
学习
活动
专区
工具
TVP
最新优惠活动
文章/答案/技术大牛
搜索
搜索
关闭
发布
首页
学习
活动
专区
工具
TVP
最新优惠活动
返回腾讯云官网
纸上得来终觉浅
专栏成员
举报
38
文章
43935
阅读量
21
订阅数
订阅专栏
申请加入专栏
全部文章(38)
linux(23)
vue.js(9)
http(2)
其他(1)
c++(1)
node.js(1)
android(1)
容器(1)
execute(1)
handler(1)
io(1)
settings(1)
threadpool(1)
编程(1)
多进程(1)
高性能(1)
工作(1)
线程池(1)
性能(1)
源码(1)
状态机(1)
搜索文章
搜索
搜索
关闭
一些库的源码阅读笔记
vue.js
vue3: https://gitee.com/wanyicheng666/code-comments/tree/master/Vue
wanyicheng
2021-04-25
475
0
Vue3源码阅读笔记之异步组件
vue.js
// 看下vue的异步组如何实现的 // implementation, close to no-op // 外部调用API function defineComponent(options) {
wanyicheng
2021-04-13
1.2K
0
Vue3源码阅读笔记之组件是如何实现
vue.js
// vue是如何把一个type是一个组件配置对象的vnode变成实际可以被插入到dom树中的vnode的呢? /** * 我们一般会这样声明一个root组件 * { * data() { * ... * }, * mounted() {...}, * template: '<div class="xxx">...</div>' * } * * 而实际可以直接插入的对应vnode结构会有一个组件实例存储用户的钩子函数,同时有一个render函数控制生成template对应
wanyicheng
2021-04-13
1.4K
0
Vue3源码阅读笔记之vnode定义
vue.js
// vnode定义:一种模拟dom节点的数据结构,其中包含的信息可以支撑vue去生成实际的dom节点,并正确同步所有用户设置的信息到dom上。 // 来看看vue中vnode相关实现: // 检测
wanyicheng
2021-04-13
2.8K
0
Vue3源码阅读笔记之事件队列
vue.js
总结一下:vue中的事件队列分3种,vue内部实现中主要是把render函数的包裹体effect放到queue队列中。
wanyicheng
2021-04-13
1.4K
0
Vue3源码阅读笔记之$emit实现
vue.js
总结:组件实例上的 emit 方法其实就是调用props中从父组件传进来的一个箭头函数。
wanyicheng
2021-04-13
3K
0
Vue3源码阅读笔记之数据响应式
vue.js
总结:Vue3中的数据响应式实现是一个较为独立的实现,适合单独分析学习哈。上文是删除了部分支线逻辑的版本,只保留了主线逻辑,大家如果想看完整的实现,还是建议去读源码哦。
wanyicheng
2021-04-12
699
0
Vue3源码阅读笔记之整体执行顺序简介(2)
vue.js
可以看到,目前只是直接对组件实例的data做了一次代理,handlers在普通对象情况下为 baseHandlers
wanyicheng
2021-04-12
1.4K
0
Vue3源码阅读笔记之整体执行顺序简介(1)
vue.js
从Vue官网得到源码(https://unpkg.com/vue@next),拷贝到本地文件,然后创建如下html:
wanyicheng
2021-04-12
1.2K
0
libuv源码阅读(23)--tcp-echo-server
linux
listen完了之后run loop等待socket可读,新连接到来,执行指定回调
wanyicheng
2021-03-14
1.2K
0
libuv源码阅读(22)--spawn
linux
总结:父进程fork出子进程去执行指定的文件或者应用,双方根据参数设置的共享fd来通信,这个示例比较简单,父进程只需要等待结束捕获信号就可以了。
wanyicheng
2021-03-14
2.6K
0
libuv源码阅读(21)--uvtee
android
其他
uv_write_s 类型是由普通ref以及cb和一些写操作有关的信息组成,然后它需要一个 uv_stream_t* handle 来配合使用。
wanyicheng
2021-03-13
1.1K
0
libuv源码阅读(20)--uvcat
linux
先看用例源码: #include <assert.h> #include <stdio.h> #include <fcntl.h> #include <unistd.h> #include <uv.h> void on_read(uv_fs_t *req); // 几个req请求 uv_fs_t open_req; uv_fs_t read_req; uv_fs_t write_req; // 读写的缓冲区都是这个 static char buffer[1024]; static uv_buf_t
wanyicheng
2021-03-13
595
0
libuv源码阅读(19)--vustop
linux
先看用例源码: #include <stdio.h> #include <uv.h> int64_t counter = 0; void idle_cb(uv_idle_t *handle) { printf("Idle callback\n"); counter++; // 计数停止 if (counter >= 5) { uv_stop(uv_default_loop()); printf("uv_stop() called\
wanyicheng
2021-03-13
356
0
libuv源码阅读(18)--progress
linux
总结:用户自己初始化的async handler 也可以被插入到异步handler队列中,当管道[0]可读的时候,代表某个异步handler可以处理了,这时候遍历队列,处理pengding状态的handler。
wanyicheng
2021-03-13
533
0
libuv源码阅读(17)--queue-cancel
linux
总结:cancel把会work从待处理的队列中移动到loop的wq就绪队列中,然后让loop的异步任务handler来处理它
wanyicheng
2021-03-13
431
0
libuv源码阅读(16)--signal
linux
总结:信号处理handler是被插入到红黑树中,按照一定规则排序插入的,信号越小,不带oneshot等规则。信号处理函数统一触发信号管道可读,然后loop从信号io管道可读端读取信号结构体,执行这个信号上的handler的回调。大概主体流程就是这样的。跟我们平常自己写某些信号的handler的方法类似:注册信号和信号函数,触发信号管道可读,主循环捕获io可读事件,根据信号值调用对应回调。
wanyicheng
2021-03-13
2.2K
1
libuv源码阅读(15)--ref-timer
linux
主要包含 timercb 和用于最小时间堆节点字段heap_node等;它由一个基础hanlder类型和自身独有的属性构成
wanyicheng
2021-03-13
626
0
libuv源码阅读(14)--queue-work
linux
其实就是调用 uv__work_submit 提交一个任务给任务队列,跟loop的io事件多线程异步化一样的处理逻辑,这里2个cb分别对应work和done函数,逻辑执行几乎一致,就不再展开分析了。
wanyicheng
2021-03-13
690
0
libuv源码阅读(13)--plugin
linux
功能很简单:载入启动参数中对应的插件动态库,调用它们的 initialize 方法
wanyicheng
2021-03-13
418
0
点击加载更多
社区活动
【纪录片】中国数据库前世今生
穿越半个世纪,探寻中国数据库50年的发展历程
立即查看
Python精品学习库
代码在线跑,知识轻松学
立即查看
博客搬家 | 分享价值百万资源包
自行/邀约他人一键搬运博客,速成社区影响力并领取好礼
立即体验
技术创作特训营·精选知识专栏
往期视频·千货材料·成员作品 最新动态
立即查看
领券
问题归档
专栏文章
快讯文章归档
关键词归档
开发者手册归档
开发者手册 Section 归档