摘要: 参考: https://github.com/LRH1993/android_interview/blob/master/android/basis/HandlerThread.md 一、概述 HandlerThread继承于Thread,所以它本质就是个Thread。与普通Thread的差别就在于 阅读全文
posted @ 2019-04-24 21:03 Ivo-oo 阅读(171) 评论(0) 推荐(0) 编辑
摘要: 一、消息机制概述 1.消息机制的简介 (1)Handler是什么 handler使Android给我们提供的用来更新UI的一套机制,也是一套消息处理机制;我们可以用它发送处理消息。 (2)Android为什么设计只能通过handler机制来更新ui? 最根本问题使解决多线程并发问题。假设一个acti 阅读全文
posted @ 2019-04-24 02:04 Ivo-oo 阅读(608) 评论(0) 推荐(0) 编辑
摘要: 所谓死锁是指两个或两个以上的线程在执行过程中,因争夺资源而造成的一种互相等待的现象,若无外力作用,它们都将无法推进下去。 一、死锁产生的条件 一般来说,要出现死锁问题需要同时满足以下条件: 在JAVA编程中,有3种典型的死锁类型:静态的锁顺序死锁,动态的锁顺序死锁,协作对象之间发生的死锁。 二、静态 阅读全文
posted @ 2019-04-24 00:10 Ivo-oo 阅读(245) 评论(0) 推荐(0) 编辑
摘要: 1.序列化的目的 (1)永久的保存对象数据(将对象数据保存在文件当中,或者是磁盘中 (2)通过序列化对象在网络中传递对象 (3)通过序列化对象在进程间传递 (4)在Intent之间,基本的数据类型直接进行相关传递即可,但是一旦数据类型比较复杂的时候,就需要进行序列化操作了 2.实现序列化的方式 (1 阅读全文
posted @ 2019-04-22 23:30 Ivo-oo 阅读(135) 评论(0) 推荐(0) 编辑
摘要: 一、概述 Android开发中我们通常让主线程负责前台用户界面的绘制以及响应用户的操作,让工作者线程在后台执行一些比较耗时的任务。Android中的工作者线程主要有AsyncTask、IntentService、HandlerThread,它们本质上都是对线程或线程池的封装。 AsyncTask是一 阅读全文
posted @ 2019-04-22 11:44 Ivo-oo 阅读(327) 评论(0) 推荐(0) 编辑
摘要: 一、概述 1.线程池的优点 ①降低系统资源消耗,通过重用已存在的线程,降低线程创建和销毁造成的消耗; ②提高系统响应速度,当有任务到达时,无需等待新线程的创建便能立即执行; ③方便线程并发数的管控,线程若是无限制的创建,不仅会额外消耗大量系统资源,更是占用过多资源而阻塞系统或oom等状况,从而降低系 阅读全文
posted @ 2019-04-21 11:06 Ivo-oo 阅读(130) 评论(0) 推荐(0) 编辑
摘要: 一、继承Thread类创建线程类 (1)定义Thread类的子类,并重写该类的run方法,该run方法的方法体就代表了线程要完成的任务。因此把run()方法称为执行体。 (2)创建Thread子类的实例,即创建了线程对象。 (3)调用线程对象的start()方法来启动该线程。 二、通过Runnabl 阅读全文
posted @ 2019-04-20 22:00 Ivo-oo 阅读(240) 评论(0) 推荐(0) 编辑
摘要: 本篇仍以问题为驱动 一、什么时Service? Service是Android程序中四大基础组件之一,它和Activity一样都是Context的子类,只不过它没有UI界面,是在后台运行的组件。Service是Android中实现程序后台运行的解决方案,它非常适用于去执行那些不需要和用户交互而且还要 阅读全文
posted @ 2019-04-20 17:47 Ivo-oo 阅读(239) 评论(0) 推荐(0) 编辑
摘要: 官方文档地说明 几个关键的信息:基于Map接口实现、允许null键/值、非同步、不保证有序(比如插入的顺序)、也不保证序不随时间变化。 一.概述 HashMap 是一个散列表,它存储的内容是键值对(key-value)映射。 HashMap 继承于AbstractMap,实现了Map、Cloneab 阅读全文
posted @ 2019-04-19 23:08 Ivo-oo 阅读(209) 评论(0) 推荐(1) 编辑
摘要: 背景知识 Activity四种启动模式 标准模式 standard 栈顶复用模式 singleTop 栈内复用模式 singleTask 单例模式 singleInstance 任务栈 Activity的Flags Activity的Flags很多,这里介绍集中常用的,用于设定Activity的启动 阅读全文
posted @ 2019-04-19 15:50 Ivo-oo 阅读(492) 评论(0) 推荐(0) 编辑