buder

上一页 1 ··· 6 7 8 9 10 11 12 13 下一页

2017年9月25日 #

201709025工作日记--更新UI方法

摘要: 1.handler+Thread 和 runOnUIThread 和 handler.post 方法 区别: 从实现原理上,两者别无二致,runOnUiThread也是借助Handler实现的。 对于使用场景,runOnUiThread用法简单,并且共享了同一个Handler,用起来高效、方便。另外 阅读全文

posted @ 2017-09-25 09:58 buder 阅读(203) 评论(0) 推荐(0) 编辑

2017年9月22日 #

201709021工作日记--Volley源码详解(五)

摘要: 学习完了CacheDispatcher这个类,下面我们看下NetworkDispatcher这个类的具体细节,先上代码: 网络调度线程也是从队列中取出请求并且判断是否被取消了,如果没取消就去请求网络得到响应并回调给主线程。请求网络时调用this.mNetwork.performRequest(req 阅读全文

posted @ 2017-09-22 08:42 buder 阅读(188) 评论(0) 推荐(0) 编辑

2017年9月21日 #

201709021工作日记--Volley源码解读(四)

摘要: 接着volley源码(三)继续,本来是准备写在(三)后面的,但是博客园太垃圾了,写了半天居然没保存上,要不是公司这个博客还没被限制登陆,鬼才用这个。。。真是垃圾 继续解读RequestQueue的源码,Volley 的入口是创建一个 RequestQueue 队列,然后开启一个缓存线程和一组网络线程 阅读全文

posted @ 2017-09-21 17:25 buder 阅读(171) 评论(0) 推荐(0) 编辑

201709021工作日记--乐观锁、悲观锁思想

摘要: 一句话理解乐观锁和悲观锁: 悲观锁:每天都认为家里东西会被人偷,每天走前都会给家里上锁 乐观锁:每天都认为很安全,任何人都能进屋访问,只要当某天东西丢了才上锁。 1.乐观锁 乐观锁是一种乐观思想,即认为读多写少,遇到并发写的可能性低,每次去拿数据的时候都认为别人不会修改,所以不会上锁,但是在更新的时 阅读全文

posted @ 2017-09-21 14:28 buder 阅读(127) 评论(0) 推荐(0) 编辑

201709021工作日记--CAS解读

摘要: CAS主要参考博文:classtag http://www.jianshu.com/p/473e14d5ab2d CAS(Compare and swap)比较和替换是设计并发算法时用到的一种技术 。Compare and Swap, 翻译成比较并交换。 简单来说,比较和替换是使用一个期望值和一个变 阅读全文

posted @ 2017-09-21 10:57 buder 阅读(168) 评论(0) 推荐(0) 编辑

201709021工作日记--线程安全与不安全、保证线程安全的三种方案、互斥和信号

摘要: 1.什么是线程安全和线程不安全 首先要明白线程的工作原理,jvm有一个main memory,而每个线程有自己的working memory,一个线程对一个variable进行操作时,都要在自己的working memory里面建立一个copy,操作完之后再写入main memory。多个线程同时操 阅读全文

posted @ 2017-09-21 09:21 buder 阅读(211) 评论(0) 推荐(0) 编辑

2017年9月20日 #

201709020工作日记--synchronized、ReentrantLock、读写锁

摘要: 1.reentrantLock java.util.concurrent.lock 中的Lock 框架是锁定的一个抽象,它允许把锁定的实现作为 Java 类,而不是作为语言的特性来实现。这就为Lock 的多种实现留下了空间,各种实现可能有不同的调度算法、性能特性或者锁定语义。 ReentrantLo 阅读全文

posted @ 2017-09-20 14:20 buder 阅读(152) 评论(0) 推荐(0) 编辑

2017年9月19日 #

201709019工作日记--Java中的各种锁--未解决

摘要: 1. Syncronized与ReentrantLock Synchronized比ReentrantLock进java标准早,因此一开始大家都是用它。相当于Java提供了一种封装的互斥锁机制,对于用户来说,声明成synchronized就可以拿到锁的能力,而不用管具体是怎么加锁解锁的 使用简便也是 阅读全文

posted @ 2017-09-19 19:18 buder 阅读(110) 评论(0) 推荐(0) 编辑

201709019工作日记--线程的中断

摘要: 1.线程中断的使用场景 首先,一个线程在未正常结束之前, 被强制终止是很危险的事情. 因为它可能带来完全预料不到的严重后果比如会带着自己所持有的锁而永远的休眠,迟迟不归还锁等。 所以你看到Thread.suspend, Thread.stop等方法都被Deprecated了。 那么不能直接把一个线程 阅读全文

posted @ 2017-09-19 16:45 buder 阅读(148) 评论(0) 推荐(0) 编辑

201709019工作日记--sleep、wait、notify的使用详解

摘要: 1. sleep()和wait()的区分 (1)这两个方法来自不同的类分别是,sleep来自Thread类,wait来自Object类。 sleep是Thread的静态类方法,谁调用的谁去睡觉,即使在a线程里调用了b的sleep方法,实际上还是a去睡觉,要让b线程睡觉要在b的代码中调用sleep ( 阅读全文

posted @ 2017-09-19 10:30 buder 阅读(299) 评论(0) 推荐(0) 编辑

上一页 1 ··· 6 7 8 9 10 11 12 13 下一页

导航