我是在深入学习 kotlin 时第一次看到协程,作为传统线程模型的进化版,虽说协程这个概念几十年前就有了,但是协程只是在近年才开始兴起,应用的语言有:go 、goLand、k...
我是在深入学习 kotlin 时第一次看到协程,作为传统线程模型的进化版,虽说协程这个概念几十年前就有了,但是协程只是在近年才开始兴起,应用的语言有:go 、goLand、k...
本学期开设了计算机图形学课程,但是用的是glut+OpenGL的组合。然而苹果已经在N年前就弃用了这个库,只能寻找替代品了。今天就入门一下GLFW库。 首先,我们需要到官网下...
今天发现一个有趣的现象,这里先说结论RxJava的retryWhen操作符会影响上游,而不会影响下游,比如下游发生了异常,不会重试,而上游发生了异常,会重试retryWhen...
原文链接: Don't break the chain: use RxJava's compose() operator 原文作者: Daniel Lew译文出自: 小鄧子的...
CopyOnWriteArrayList 简介 在很多应用场景中,读操作可能会远远大于写操作。由于读操作根本不会修改原有的数据,因此如果每次读取都进行加锁操作,其实是一种资源...
git-merge完全解析 Git的git-merge是在Git中频繁使用的一个命令,很多人都觉得git合并是一个非常麻烦的事情,一不小心就会遇到丢失代码的问题,从而对git...
本文转载自原码, 反码, 补码 详解 本篇文章讲解了计算机的原码, 反码和补码. 并且进行了深入探求了为何要使用反码和补码, 以及更进一步的论证了为何可以用反码, 补码的加法...
什么是 rebase? git rebase 你其实可以把它理解成是“重新设置基线”,将你的当前分支重新设置开始点。这个时候才能知道你当前分支于你需要比较的分支之间的差异。原...
一、前言: Block是Objective-C中的一项强大的特性,Block可以看作是OC中对于闭包函数的实现,实质上Block也是一个对象~ 二、内存分配区域: OC中的各...