摘要:
一、概述 ThreadLocal是什么呢?其实ThreadLocal并非是一个线程的本地实现版本,它并不是一个Thread,而是threadlocalvariable(线程局部变量)。也许把它命名为ThreadLocalVar更加合适。线程局部变量(ThreadLocal)其实的功用非常简单,就是为 阅读全文
posted @ 2016-04-04 23:45
Sharley
阅读(511)
评论(0)
推荐(0)
摘要:
一、进程和线程的基础知识 1、进程和线程的概念 进程:运行中的应用程序称为进程,拥有系统资源(cpu、内存) 线程:进程中的一段代码,一个进程中可以有多段代码。本身不拥有资源(共享所在进程的资源) 在java中,程序入口被自动创建为主线程,在主线程中可以创建多个子线程。 区别: 1、是否占有资源问题 阅读全文
posted @ 2016-04-04 23:42
Sharley
阅读(259)
评论(0)
推荐(0)
摘要:
Android异步加载 一、为什么要使用异步加载? 1.Android是单线程模型 2.耗时操作阻碍UI线程 二、异步加载最常用的两种方式 1.多线程、线程池 2.AsyncTask 三、实现ListView图文混排 3-1 实现读取网页中的json数据到ListView中 (图片首先为默认图片) 阅读全文
posted @ 2016-04-04 23:34
Sharley
阅读(309)
评论(0)
推荐(0)
摘要:
一、线程的生命周期 线程状态转换图: 1、新建状态 用new关键字和Thread类或其子类建立一个线程对象后,该线程对象就处于新生状态。处于新生状态的线程有自己的内存空间,通过调用start方法进入就绪状态(runnable)。 注意:不能对已经启动的线程再次调用start()方法,否则会出现jav 阅读全文
posted @ 2016-04-04 23:30
Sharley
阅读(632)
评论(0)
推荐(0)
摘要:
在之前,已经学习到了线程的创建和状态控制,但是每个线程之间几乎都没有什么太大的联系。可是有的时候,可能存在多个线程多同一个数据进行操作,这样,可能就会引用各种奇怪的问题。现在就来学习多线程对数据访问的控制吧。 由于同一进程的多个线程共享同一片存储空间,在带来方便的同时,也带来了访问冲突这个严重的问题 阅读全文
posted @ 2016-04-04 23:23
Sharley
阅读(307)
评论(0)
推荐(0)
摘要:
系统启动一个新线程的成本是比较高的,因为它涉及到与操作系统的交互。在这种情况下,使用线程池可以很好的提供性能,尤其是当程序中需要创建大量生存期很短暂的线程时,更应该考虑使用线程池。 与数据库连接池类似的是,线程池在系统启动时即创建大量空闲的线程,程序将一个Runnable对象传给线程池,线程池就会启 阅读全文
posted @ 2016-04-04 23:10
Sharley
阅读(254)
评论(0)
推荐(0)
摘要:
官网帮助文档链接: http://developer.android.com/guide/components/fragments.html 主要看两张图,和跑代码 一,Fragment的生命周 二,与Activity生命周期的对比 场景演示 : 切换到该Fragment 11-29 14:26:3 阅读全文
posted @ 2016-04-04 17:47
Sharley
阅读(192)
评论(0)
推荐(0)