Handler消息机制 1、Handler 被设计出来的原因?有什么用? Handler 的意义就是切换线程 作为 Android 消息机制的主要成员,它管理着所有与界面有关的消息事件,常见的使用场景有: 跨进程之后的界面消息处理。 Binder 线程到主线程比如 Activity 的启动,就是 AMS 在进行进程间通信的时候,通过 Binder 线程将消息发送给 ApplicationThread 的消息处理者 2024-04-06 源码
AsyncTask 原理 AsyncTask的特点是任务在主线程之外运行,而回调方法是在主线程中执行,AsyncTask其实使用handler来实现异步任务的,它是一个抽象类,AsyncTask的execute在主线程中首先调用了onPreExecute做预备工作,在子线程中调用了doInBackground方法去做耗时操作,返回的数据通过Message.obtain(handler, ON_POST_MSG, re 2024-04-06 源码
关于httpdns 关于httpdns背景在排查视频播放失败的案例中发现,DNS解析失败导致播放失败的占比较高,HTTPDNS可以解决这类问题,所以接入阿里的HTTPDNS。 DNS https://help.aliyun.com/document_detail/102237.htmlhttp://www.52im.net/thread-2121-1-1.htmlhttps://www.cloudflare.com/ 2024-04-06 未分类
WebSocket 聊聊OkHttp实现WebSocket细节,包括鉴权和长连接保活及其原理! - 承香墨影 - 博客园 今天介绍的 WebSocket,下层和 HTTP 一样也是基于 TCP 协议,这是一种轻量级网络通信协议,也属于应用层协议。 轮询的缺点也非常明显,大量空闲的时间,其实是在反复发送无效的请求,这显然是一种资源的损耗。 WebSocket 是真正意义上的全双工模式,也就是我们俗称的「长连接」。当 2024-04-06 未分类
hexo博客 https://peiniwan.github.io/ 命令文章本地预览 123//在Hexo 3.0 后server被单独出来了,需要安装server npm install hexo-server --save hexo s 博客发布 1234npm install hexo-deployer-git --save hexo g generatehexo deployhexo d 每次无 2024-04-06 未分类
Git 命令清单 【教程】从gitee或者github,下载单个文件或文件夹命令_gitee如何只下载仓库中的一个文件夹-CSDN博客 中央式 Git是分布式:不用网也能提交。在家提交HEAD 也是引用,但它不是 branch,它代表了当前所处的位置git checkout -b feature/修复bug-1.4 c6076c30 恢复删除的分支 https://pcottle.github.co 2024-04-06 未分类
数据结构和算法分享 数据结构和算法部分内容来自极客时间课程 数据结构与算法之美 数据结构和算法 举个例子:图书管理员会将书籍分门别类进行“存储”,按照一定规律编号,这就是书籍这种“数据”的存储结构。 那我们如何来查找一本书呢?有很多种办法,你当然可以一本一本地找,也可以先根据书籍类别的编号,是人文,还是科学、计算机,来定位书架,然后再依次查找。笼统地说,这些查找方法都是算法。 数据结构和算法是相辅相成的。数据结构是为 2024-04-06 算法
7-贪心、回溯、动态规划 动态规划淘宝的“双十一”购物节有各种促销活动,比如“满 200 元减 50 元”。假设你女朋友的购物车中有 n 个(n>100)想买的商品,她希望从里面选几个,在凑够满减条件的前提下,让选出来的商品价格总和最大程度地接近满减条件(200 元),这样就可以极大限度地“薅羊毛”。作为程序员的你,能不能编个代码来帮她搞定呢? 动态规划比较适合用来求解最优问题,比如求最大值、最小值等等。最优子结构指 2024-04-06 算法
5-链表题 链表反转常见的解决方法分为递归和迭代两种我们知道迭代是从前往后依次处理,直到循环到链尾;而递归恰恰相反,首先一直迭代到链尾也就是递归基判断的准则,然后再逐层返回处理到开头。总结来说,链表翻转操作的顺序对于迭代来说是从链头往链尾,而对于递归是从链尾往链头。下面我会用详细的图文来剖析其中实现的细节。 递归操作链表并不高效。和迭代解法相比,虽然时间复杂度都是 O(N),但是迭代解法的空间复杂度是 O(1 2024-04-06 算法
4-二叉树 总结树是无向、连通的无环图。 二叉树的提出其实主要就是为了提高查找效率,比如我们常用的 HashMap 在处理哈希冲突严重时,拉链过长导致查找效率降低,就引入了红黑树。我们知道,二分查找可以缩短查找的时间,但是它要求查找的数据必须是有序的。每次查找、操作时都要维护一个有序的数据集,于是有了二叉查找树这个概念。 分类 二叉树即是每个节点最多包含左子节点与右子节点这两个节点的树形数据结构 满二叉树 2024-04-06 算法