Android的消息机制之ThreadLocal的工作原理
摘要:ThreadLocal 可以把一个对象保存在指定的线程中,对象保存后,只能在指定线程中获取保存的数据,对于其他线程来说则无法获取到数据。 日常开发中 ThreadLocal 使用的地方比较少,但是系统在 Handler 机制中使用了它来保证每一个 Handler 所在的线程中都有一个独立的 Loop
阅读全文
posted @
2019-12-06 10:46
mingfeng002
阅读(2911)
推荐(0)
Java 内存模型
摘要:理解Java内存模型是深入学习Java并发不可或缺的部分。Java内存模型即Java Memory Model,简称为JMM,定义了多线程之间共享变量的可见性以及如何在需要的时候对共享变量进行同步。 JMM规定Java线程间的通信采用共享内存的方式。在Java中,所有成员变量、静态变量和数组元素都存
阅读全文
posted @
2019-08-29 17:46
mingfeng002
阅读(223)
推荐(0)
多线程编程_读写锁ReadWriteLock
摘要:Lock比传统线程模型中的synchronized方式更加面向对象,与生活中的锁类似,锁本身也应该是一个对象。两个线程执行的代码片段要实现同步互斥的效果,它们必须用同一个Lock对象。 读写锁:分为读锁和写锁,多个读锁不互斥,读锁与写锁互斥,这是由jvm自己控制的,你只要上好相应的锁即可。如果你的代
阅读全文
posted @
2018-01-19 10:09
mingfeng002
阅读(583)
推荐(0)
多线程编程_控制并发线程数的Semaphore
摘要:简介 Semaphore(信号量)是用来控制同时访问特定资源的线程数量,它通过协调各个线程,以保证合理的使用公共资源。很多年以来,我都觉得从字面上很难理解Semaphore所表达的含义,只能把它比作是控制流量的红绿灯,比如XX马路要限制流量,只允许同时有一百辆车在这条路上行使,其他的都必须在路口等待
阅读全文
posted @
2017-04-28 15:39
mingfeng002
阅读(281)
推荐(0)
多线程编程_CyclicBarrier
摘要:1、类说明: 一个同步辅助类,它允许一组线程互相等待,直到到达某个公共屏障点 (common barrier point)。在涉及一组固定大小的线程的程序中,这些线程必须不时地互相等待,此时 CyclicBarrier 很有用。因为该 barrier 在释放等待线程后可以重用,所以称它为循环 的 b
阅读全文
posted @
2017-04-28 15:20
mingfeng002
阅读(174)
推荐(0)
多线程编程_CountDownLatch同步倒数计数器
摘要:CountDownLatch是JAVA提供在java.util.concurrent包下的一个辅助类,可以把它看成是一个计数器,其内部维护着一个count计数,只不过对这个计数器的操作都是原子操作,同时只能有一个线程去操作这个计数器,CountDownLatch通过构造函数传入一个初始计数值,调用者
阅读全文
posted @
2017-04-27 11:07
mingfeng002
阅读(455)
推荐(0)
ThreadLocal
摘要:ThreadLocal很容易让人望文生义,想当然地认为是一个“本地线程” 。其实,ThreadLocal并不是一个 Thread,而是 Thread 的局部变量,当使用 ThreadLocal 维护变量时,ThreadLocal 为每个使用该变量的线程提供独立的变量副本,所以每一个线程都可以独立地改
阅读全文
posted @
2014-07-14 17:11
mingfeng002
阅读(294)
推荐(0)
深入解析AsyncTask
摘要:Android 1.5提供了一个工具类:AsyncTask,它使创建需要与用户界面交互的长时间运行的任务变得更简单。相对来说AsyncTask更轻量级一些,适用于简单的异步处理,不需要借助线程和Handler即可实现。 AsyncTask的功能在不在这里介绍。 3.0之前一直以来都是以下面的方式执行
阅读全文
posted @
2014-07-11 14:12
mingfeng002
阅读(251)
推荐(0)
java线程池
摘要:线程池的作用: 线程池作用就是限制系统中执行线程的数量。 根据系统的环境情况,可以自动或手动设置线程数量,达到运行的最佳效果;少了浪费了系统资源,多了造成系统拥挤效率不高。用线程池控制线程数量,其他线程排队等候。一个任务执行完毕,再从队列的中取最前面的任务开始执行。若队列中没有等待进程,线程池的这一
阅读全文
posted @
2013-09-02 22:02
mingfeng002
阅读(608)
推荐(0)