生产者消费者模式是多线程中最为常见的模式:生产者线程(一个或多个)生成面包放进篮子里(集合或数组),同时,消费者线程(一个或多个)从篮子里(集合或数组)取出面包消耗。虽然它们任务不同,但处理的资源是相同的,这体现的是一种线程间通信方式。 本文将先说明单生产者单消费者的情况,之后再说明多生产者多消费者 ...
分类:
编程语言 时间:
2018-12-04 11:29:42
阅读次数:
232
如果你是JavaScript或者区块链开发者,如果你有关注区块链以及比特币,那么你应该听说了比特币钱包被******的事情。但是,你知道这是怎么回事吗?
分类:
编程语言 时间:
2018-12-03 20:20:06
阅读次数:
230
收集的目的就是为了当我们修改数据的时候,可以对相关的依赖派发更新,那么这一节我们来详细分析这个过程。 setter 部分的逻辑: 假设我们有如下模板: 我们知道这段模板将会被编译成渲染函数,接着创建一个渲染函数的观察者,从而对渲染函数求值,在求值的过程中会触发数据对象 name 属性的 get 拦截 ...
分类:
其他好文 时间:
2018-11-29 15:29:16
阅读次数:
150
本文由蔡述雄发表接下来我们会详细分析下如何完成由多个组件组成一个复用组件的开发流程。下面先看看我们的需求列表组件quiList.vue本节我们主要要完成这样一个列表功能,每一行的列表是一个组件,列表内可能出现按钮组件或者箭头组件,点击按钮组件可以自定义事件,同时可以根据不同的参数来决定当前列表是带按钮的列表or带箭头的列表。首先看看quiList.vue//quiList.vue<templ
分类:
Web程序 时间:
2018-11-29 15:00:44
阅读次数:
254
1) 2)(具体做法和1)相同,就不再详细分析) 3) 4) 5) 6) ...
分类:
其他好文 时间:
2018-11-25 16:10:44
阅读次数:
205
在上一篇文章中《P2P技术是什么》,我们介绍了P2P技术的特点以及发展历史。在本篇文章中,我们来介绍某一个具体的算法。 如今很多P2P网络的实现都采用DHT的方式实现查找,其中Kademlia(简称Kad)算法由于其简单性、灵活性、安全性成为主流的实现方式。下面我们就来详细分析这个应用于比特币和以太 ...
分类:
编程语言 时间:
2018-11-18 13:34:51
阅读次数:
295
Leetcode 856. Score of Parentheses 括号得分(栈) 题目描述 字符串S包含平衡的括号(即左右必定匹配),使用下面的规则计算得分 + 得1分 + 得A+B的分,比如 得2分 + 得2 A分, 比如 得2 (1+1)分 测试样例 详细分析 简而言之,遇到右括号就一直出栈 ...
分类:
其他好文 时间:
2018-11-11 15:54:25
阅读次数:
151
写了分析源码的文章后, 总觉得缺少了什么, 在这里补一个整体的总结,输出个人的理解~ 文章的系列标题为Fiber源码分析, 那么什么是Fiber,官方给出的解释是: React Fiber是对核心算法的一次重新实现。 ummm, 这样说实在是有点泛,详细分析一下 先从开发者角度来看 实际上这次更新对 ...
分类:
其他好文 时间:
2018-11-11 11:51:05
阅读次数:
164
Leetcode 413. Arithmetic Slice 算术序列切片(动态规划,暴力) 题目描述 如果一个数组1.至少三个元素2.两两之间差值相同,那么这个数组就是算术序列 比如下面的数组都是算术序列: 但是这一个就不是: 求给定数组,能有多少个算术序列 测试样例 详细分析 1. 暴力: 从长 ...
分类:
其他好文 时间:
2018-11-07 21:39:26
阅读次数:
142