蜘蛛侠不会飞
码龄5年
  • 1,551,719
    被访问
  • 250
    原创
  • 2,178
    排名
  • 844
    粉丝
关注
提问 私信

个人简介:关注公众号【不至于编程】,回复【CS】获取30本豆瓣高分计算机就书籍,包括操作系统、计算机网络、数据结构与算法等

  • 加入CSDN时间: 2017-10-11
博客简介:

mike_jun的博客

博客描述:
学而不思则罔,思而不学则殆。
查看详细资料
  • 6
    领奖
    总分 2,889 当月 104
个人成就
  • 获得1,216次点赞
  • 内容获得272次评论
  • 获得6,718次收藏
创作历程
  • 9篇
    2022年
  • 27篇
    2021年
  • 68篇
    2020年
  • 36篇
    2019年
  • 155篇
    2018年
  • 10篇
    2017年
成就勋章
TA的专栏
  • 安卓源码解析
    8篇
  • FFmpeg学习
    4篇
  • 安卓开发
    19篇
  • 计算机基础知识总结
    12篇
  • C/ C++ 编程知识
    12篇
  • 软件著作权
    1篇
  • 面试相关
    10篇
  • 剑指offer
    17篇
  • MySQL 数据库
    4篇
  • 数据结构
    14篇
  • Python 编程知识
    29篇
  • Java 编程知识
    18篇
  • PyQt5
    5篇
  • 数据挖掘与人工智能
    65篇
  • Java Web后端知识
    30篇
  • 模式设计
    4篇
  • 区块链
    4篇
  • Others 其他一些知识总结
    40篇
  • 论文 -- 小波变化
    5篇
  • Scala编程
    7篇
  • 最近
  • 文章
  • 资源
  • 问答
  • 帖子
  • 视频
  • 课程
  • 关注/订阅/互动
  • 收藏
搜TA的内容
搜索 取消

【安卓R 源码】native层媒体模块通信AHandler机制源码

本章将分析native层媒体模块通信AHandler机制源码实现,类图关系如下:from:Android native层媒体通信架构AHandler/ALooper机制实现源码分析【Part 1】_小白兔LHao的博客-CSDN博客frameworks/av/media/libstagefright/MediaClock.cppvoid MediaClock::processTimers_l() { int64_t nowMediaTimeUs; status_t sta.
原创
发布博客 2022.05.16 ·
4 阅读 ·
0 点赞 ·
0 评论

【安卓R 源码】从 Telecom CallAudioModeStateMachine详解StateMachine状态机源码

状态机是将对象的状态与行为封装在一起;可以解决庞大的分支语句带来程序阅读性差和不便于进行扩展问题,使整个结构变得更加清晰明了,降低程序管理的复杂性提高灵活度。Android系统的StateMachine机制是一个State模式的应用,StateMachine是一个分层处理消息的状态机,并且是能够有分层排列状态。以 Telecom 的CallAudioModeStateMachine 作为分析:1. 状态机的构造函数/packages/services/Telecomm/src/com/and
原创
发布博客 2022.04.21 ·
2231 阅读 ·
0 点赞 ·
0 评论

【FFmpeg学习】H264 视频码流分析

H264 原始码流和解码流程1. H264编码分层NAL层:(Network Abstraction Layer,视频数据网络抽象层): 它的作用是H264只要在网络上传输,在传输的过程每个包以太网是1500字节,而H264的帧往往会大于1500字节,所以要进行拆包,将一个帧拆成多个包进行传输,所有的拆包或者组包都是通过NAL层去处理的。 VCL层:(Video Coding Layer,视频数据编码层): 对视频原始数据进行压缩我们可以看到视频帧序列每一帧图像是由slice构成.
原创
发布博客 2022.03.31 ·
117 阅读 ·
0 点赞 ·
0 评论

【FFmpeg学习】H264 视频编码格式详细总结

一、音视频的一些名词解释1. 码率指视频文件在单位时间内使用的数据流量,也叫码流率。码率越大,说明单位时间内取样率越大,数据流精度就越高,这样表现出来的的效果就是:视频画面更清晰画质更高。一般以秒为单位,如:128 kbps,表示每秒通过网络传送的数据量为 128k bit.2. 帧率指视频每秒钟包含多少张画面,一般单位为fps。帧率越高,表示单位时间内图像帧的个数,普通的视频文件一般在25fps - 30fps之间,表示每秒钟25-30张图像,而一般涉及到游戏等帧率会比较高一些
原创
发布博客 2022.03.17 ·
434 阅读 ·
0 点赞 ·
0 评论

【FFmpeg学习】YUV采样方式与存储格式

​1. 音视频播放原理音视频播放的原理主要分为:解协议->解封装->解码->音视频同步->播放。[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-6XASE4OD-1646829498402)(<> “点击并拖拽以移动”)]​[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-8CnXBENa-1646829498410)(<> “点击并拖拽以移动”)]​1.解协议:将流媒体协议的数据解析为相应
原创
发布博客 2022.03.09 ·
2545 阅读 ·
0 点赞 ·
0 评论

【FFmpeg学习】Visual Studio 2019 使用 ffmpeg 详细方法

目录1. 下载FFmpeg编译好的Windows版本2.VS2019配置ffmpeg3. Windows控制台使用ffmpeg命令1. 下载FFmpeg编译好的Windows版本地址如下:Download FFmpeg点击如下:选择 shared2.VS2019配置ffmpeg比如:你下载上述的编译好的 ffmpeg 版本路径为:C:\ffmpeg\ffmpeg-4.4.1-full_build-shared1)右键项...
原创
发布博客 2022.03.06 ·
2717 阅读 ·
1 点赞 ·
0 评论

【安卓R 源码】获取音频焦点和释放音频焦点

一. 获取焦点流程1. 电话焦点只有系统可以申请,如果是电话焦点,系统会把所有多媒体和游戏的音频流实例全部mute。同理电话焦点释放会解除mute操作2. 系统管理的焦点栈有大小限制限制为100.大于100,抢占焦点失败。3. 电话焦点状态下,其他app的所有抢占焦点的操作都会失败。4. 我们传的OnAudioFocusListener决定了ClientID,相同的ClientID焦点栈中不会重复存储,OnAudioFocusListener最好进行复用,除了特殊的业务场景。电话焦点...
原创
发布博客 2022.02.18 ·
383 阅读 ·
0 点赞 ·
0 评论

【安卓R 源码】Ripple 水波纹效果源码

安卓使用ripple实现点击时的涟漪效果 - 简书https://www.jb51.net/article/145309.htmAndroid:RippleDrawable 水波纹/涟漪效果 - 简书Android5.0 水波控件RippleDrawable简析_Jeepend的专栏-CSDN博客在Android5.0中新增了一种水波效果控件,叫RippleDrawable,当控件使用RippleDrawable作为背景(android:background)且在控件可以接受点击动作
原创
发布博客 2022.01.07 ·
42 阅读 ·
0 点赞 ·
0 评论

【安卓R 源码】 View事件分发机制源码流程

1. 屏幕点击事件事件 简介 ACTION_DOWN 手指 初次接触到屏幕 时触发。 ACTION_MOVE 手指 在屏幕上滑动 时触发,会多次触发。 ACTION_UP 手指 离开屏幕 时触发。 ACTION_CANCEL 事件 被上层拦截 时触发。 安卓中输入事件主要分为KeyEvent(键盘)和MotionEvent(触摸屏)两种,其中 KeyEvent是指键盘输入事件,本文主要讲 MotionEvent。正常情况下,无论你手指在屏幕做多少操作
原创
发布博客 2022.01.06 ·
1446 阅读 ·
0 点赞 ·
0 评论

【安卓 R 源码】从源码角度看Context

1. Context 是什么?Context,中文直译为“上下文”,它描述的是一个应用程序环境的信息,从程序的角度上来理解:Context是个抽象类,而Activity、Service、Application等都是该类的一个实现。SDK中对其说明如下:Interface to global information about an application environment. This is an abstract class whose implementation is provided
原创
发布博客 2021.11.22 ·
1734 阅读 ·
0 点赞 ·
0 评论

【安卓 R 源码】Activity 启动流程及其生命周期源码分析

1. Activty 的生命周期activity的生命周期oncreate()->onstart()->onResume()->onPause()->onStop()->onDestory()onCreate():当我们点击activity的时候,系统会调用activity的oncreate()方法,在这个方法中我们会初始化当前布局setContentLayout()方法。onStart():onCreate()方法完成后,此时activity进入.
原创
发布博客 2021.11.18 ·
2209 阅读 ·
1 点赞 ·
0 评论

【安卓R 源码】Hnadler 消息处理机制源码分析

1. Handler 的常用使用方法Handler是安卓提供的一种消息机制。通常用于接受子线程发送的数据,并用此数据配合主线程更新UI。比如,点击一个按钮去服务器请求数据。如果直接在主线程(UI线程)做请求操作,界面会出现假死现象, 如果长时间还没有完成的话,会收到Android系统的一个错误提示 "应用程序无响应(ANR)"。为什么呢?因为在Android里, App的响应能力是由Activity Manager和Window Manager系统服务来监控的. 通常在如下三种情况下会弹出ANR对.
原创
发布博客 2021.11.12 ·
57 阅读 ·
0 点赞 ·
1 评论

【安卓 R 源码】 bindService 源码分析

使用bindService主要分两种情形:1. Service的调用者client与Service在同一个App中;2. Service的调用者client是App1中的一个Activity,而Service是App2中的Service,client与service分属两个App,这种情形下主要用于实现跨进程的通信。bindService 的生命周期:Service被绑定bindService()的时候调用onCreate()和onBind()方法,onStartCommand()方法不被
原创
发布博客 2021.11.10 ·
1796 阅读 ·
0 点赞 ·
0 评论

CompletableFuture 的使用方法

https://www.jianshu.com/p/6bac52527ca4CompletableFuture是java8引入的新类,该类实现了 Future 接口和 CompletionStage 接口,封装了future、forkjoin相关类来执行异步,所以你还是可以像以前一样通过阻塞(get)或者轮询的方式获得结果,尽管这种方式不推荐使用。 CompletionStage 接口代表异步计算中的 不同阶段,以及如何 组合 这些计算阶段。 CompletableStage 接口中有 50 多个.
转载
发布博客 2021.09.01 ·
117 阅读 ·
0 点赞 ·
0 评论

基于区块链的去中心化交易关键技术研究及应用

发布资源 2021.05.25 ·
caj

2021年 Spring 精选大厂面试题-【附详细答案】

1.什么是spring?Spring是一个轻量级Java开发框架,最早有Rod Johnson创建,目的是为了解决企业级应用开发的业务逻辑层和其他各层的耦合问题。它是一个分层的JavaSE/JavaEE full-stack(一站式)轻量级开源框架,为开发Java应用程序提供全面的基础架构支持。Spring负责基础架构,因此Java开发者可以专注于应用程序的开发。Spring最根本的使命是解决企业级应用开发的复杂性,即简化Java开发。Spring可以做很多事情,它为企业级开发提供给了丰富.
原创
发布博客 2021.05.17 ·
752 阅读 ·
0 点赞 ·
0 评论

2021年 ZooKeeper 精选大厂面试题-【附详细答案】

ZooKeeper 是一个开源的分布式协调服务。它是一个为分布式应用提供一致性服务的软件,分布式应用程序可以基于 Zookeeper 实现诸如数据发布/订阅、负载均衡、命名服务、分布式协调/通知、集群管理、Master 选举、分布式锁和分布式队列等功能。ZooKeeper 的目标就是封装好复杂易出错的关键服务,将简单易用的接口和性能高效、功能稳定的系统提供给用户。Zookeeper 保证了如下分布式一致性特性:(1)顺序一致性(2)原子性(3)单一视图(4)可靠性(5)实时性(
原创
发布博客 2021.05.06 ·
2102 阅读 ·
0 点赞 ·
1 评论

2021年SpringCloud 精选大厂面试题-【附详细答案】

1. 微服务是什么?微服务与微服务架构微服务的优缺点2. 微服务之间是如何独立通讯的微服务通信机制系统中的各个微服务可被独立部署,各个微服务之间是松耦合的。每个微服务仅关注于完成一件任务并很好地完成该任务。围绕业务能力组织服务、自动化部署、智能端点、对语言及数据的去集中化控制。将组件定义为可被独立替换和升级的软件单元。 以业务能力为出发点组织服务的策略。 倡导谁开发,谁运营的开发运维一体化方法。 RESTful HTTP协议是微服务架构中最常用的通讯机制...
原创
发布博客 2021.04.24 ·
1134 阅读 ·
2 点赞 ·
0 评论

Java 多线程、多进程、并发编程面试总结 (2021年)

1.并行和并发有什么区别?并发:多个任务在同一个 CPU 核上,按细分的时间片轮流(交替)执行,从逻辑上来看那些任务是同时执行。并行:单位时间内,多个处理器或多核处理器同时处理多个任务,是真正意义上的“同时进行”。串行:有n个任务,由一个线程按顺序执行。由于任务、方法都在一个线程执行所以不存在线程不安全情况,也就不存在临界区的问题。做一个形象的比喻:并发 = 两个队列和一台咖啡机。并行 = 两个队列和两台咖啡机。串行 = 一个队列和一台咖啡机。2.进程与线程的区别线..
原创
发布博客 2021.04.18 ·
290 阅读 ·
0 点赞 ·
0 评论

2021 - 精心整理的 JVM 虚拟机 常见面试题-【附详细答案】

目录1. JVM运行时数据区是什么?2. 请说一下JVM的类加载流程3. JVM内存参数调优4.Java中的垃圾回收算法?5. 如何判断一个对象是否存活?6. 有哪几种垃圾回收器,有哪些优缺点?cms和g1的区别?7. 强引用、软应用、弱引用、虚引用的区别?8. 说一下java虚拟机的基本结构9.内存模型以及分区,需要详细到每个区放什么?10.说一下堆栈的区别?11. 什么是双亲委派模型?​12. 怎么判断对象是否可以被回收?13. 详细说一下垃圾收集..
原创
发布博客 2021.04.15 ·
309 阅读 ·
0 点赞 ·
0 评论
加载更多