移动开发

手写RxJava简易框架领悟RxJava的美秒

RxJava笔记 前言 看此篇之前最好知道RxJava的使用。由于RxJava内部源码实现有点复杂,既然用拆轮子的方式来分析源码比较难啃,不如换种方式,以造轮子的方式,将源码中与性能、兼容性、扩展性有关的代码剔除,只留下核心代码,加上我个人的理解,带大家揭秘RxJava的实现原理(本文不涉及框架的使用介绍)。 一、构建观察者类 Subsribler在RxJava里面是一个抽象类,它实现了Obs

浅谈 RunLoop

什么是RunLoop     RunLoop 是事件接收和分发机制的一个实现,是线程相关的基础框架的一部分,一个 RunLoop 就是一个事件处理的循环,用来不停的调度工作以及处理输入事件。一般来讲,一个线程一次只能执行一个任务,执行完成后线程就会退出。如果我们需要一个机制,让线程能随时处理事件但并不退出,通常的代码逻辑是这样的: do{ //... }while(//...)     

【源码】Vue3 Ref原理,套娃的艺术

前言 Vue3有个Ref API,官网文档 说明其主要的用处是:1、将一个原始类型值 (例如,一个字符串),变成响应式的。2、当解构的两个 property 的响应性都会丢失时,可以将我们的响应式对象转换为一组 ref。这些 ref 将保留与源对象的响应式关联。 下面是对应的两个例子: import { ref } from 'vue' const count = ref(0) console.

ThreadLocal的简单理解

[TOC] 一、背景 最近有人问我ThreadLocal是如何做到在每个线程中的值都是隔离的,此处写篇文章来简单记录下。 二、ThreadLocal解决的问题 该数据属于该线程Thread自身,别的线程无法对其影响。(需要注意:需要调用ThreadLocal的remove方法) 不存在线程安全问题。(因为ThreadLocal类型的变量只有自身的线程可以访问,所以这点是成立的。) 比如:

单系统使用JWT实现登录案例

一、JWT简介 在上一篇中介绍了使用cookie+session实现登录的案例,最后介绍了其缺点,就是需要在服务器端存放用户的信息,增加了服务端的压力,并且如今移动端盛行,用户端不支持cookie的问题也要求我们需要寻找其它方案。 JWT,Json Web Token,定义了一种紧凑的,自包含的方式,用于在各方之间以json对象的方式安全地传输信息,该信息可用于验证身份信息。如下是JWT的工作流程

2022-04-10 QT6.0以上使用qcustomplot报错简单解决法

qcustomplot是qt一个好用的图形绘制库,最近更新qt版本到6.2.4后,发现原先的qcustomplot会报错,报错原因如下: 图片.png MinGW_64_bit-Debug\debug\moc_qcustomplot.cpp:249: error: template argument 1 is invalid debug\moc_qcustomplot.cpp:24

推荐一下我的 Flutter 学习资源

我接触 Flutter 才半年,但进步却很大,这主要是我找到了好的学习资源,今天就把这些资源推荐给大家。 掘金的 Flutter 专区 网址是: Flutter 相关的文章,建议每天关注这里的新文章。并把过去的最热文章翻看一些。 推荐关注郭树煜的掘金博客 @恋猫de小郭,或他的公众号 @GSYTech。 Flutter

Android 获取手机已安装的应用列表

1、扫描已安装的应用列表 var queryIntentActivities = mutableListOf<ResolveInfo>() val intent = Intent(Intent.ACTION_MAIN).addCategory(Intent.CATEGORY_LAUNCHER) if (android.os.Build.VERSION.S

鸿蒙 手游sdk 开发教程

前言 : 各位同学的大家好 , 最近在学习鸿蒙开发, 因为我是从事手游SDK 开发的 之前也写过iOS 手游sdk 开发和安卓手游sdk 开发(kotlin 版本) 效果图: image.png image.png 设计思路 我们需要封装 init login servicelogin updateuserinfo 等对外接口给到游戏去调用 package

Android 常用 框架 集合

1. Jetpack(MVVM) MVVMHabit 于谷歌最新AAC架构,MVVM设计模式的一套快速开发库。 binding-collection-adapter 数据绑定框架将集合绑定到列表视图。 data-binding-recyclerview Recyclerview数据绑定框架。 FlowBinding 受RxBinding启发, Kotlin Flow 绑定 API 和未捆绑的 U