java
文章平均质量分 64
tencent_hw
hello world
展开
-
Java多线程系列1(线程基本常识)
1 线程的生命周期线程声明周期,经典图示意如下: 线程的几个状态解释如下: 1)当调用 new Thread()时候,线程处于新建状态。此时JVM为线程分配内存空间,执行必要的初始化; 2)调用start(),此时线程会进入到线程等待队列,等待CPU的调度。此时线程处于Runnable状态; 3)线程抢占到CPU的执行权,此时CPU开始执行线程。原创 2017-07-29 09:31:33 · 439 阅读 · 0 评论 -
注解:编译注解
待写原创 2017-08-08 19:30:22 · 245 阅读 · 0 评论 -
Java 容器与并发
List ArrayList LinkedList CopyOnWriteArrayListMap HashMap LinkedHashMap WeakHashMap IdentityHashMap ConcurrentHashMap ConcurrentSkipListMap NavigableMap Tree原创 2017-08-08 19:25:25 · 304 阅读 · 0 评论 -
Java多线程系列2(守护线程)
1 用户线程和守护线程 Java虚拟机中,有两种线程:用户线程(User Thread)和守护线程(Daemon Thread)。 平时我们编写代码中的main函数所在的线程一般就是用户线程。 守护线程是相对于用户线程而言的。守护线程的优先级低于用户线程。 用户线程和守护线程的区别是: (1)守护线程在调用start()运行之前,要调用setDaemon(true)才可以设置为原创 2017-07-29 21:37:07 · 207 阅读 · 0 评论 -
Java多线程系列9(CountDownLatch)
1 CounDownLatch介绍CountDownLatch是java 1.5新引入的一个同步工具类,常用场景为:一个(或者多个)线程等待另外N个线程完成某个事情之后才能执行。是一个非常有用的线程同步类。 其API有://递减锁存器的计数值,如果计数达到0,就释放所有等待的线程。如果计数大于0,计数减1 public void countDown() //等待锁存器的计数值减为0 public原创 2017-07-31 00:28:31 · 328 阅读 · 0 评论 -
Java多线程系列8(Atomic)
待写原创 2017-07-31 00:26:49 · 230 阅读 · 0 评论 -
Java多线程系列7(Condition)
待写原创 2017-07-31 00:25:14 · 191 阅读 · 0 评论 -
Java多线程系列6(Lock)
待写原创 2017-07-31 00:24:05 · 243 阅读 · 0 评论 -
Java多线程系列5(synchronized)
待写原创 2017-07-31 00:23:02 · 210 阅读 · 0 评论 -
Java多线程系列4(wait/notify/notifyAll)
waitnotifynotifyAll 实现生产者消费者模型1 wait/notify/notifyAll这三个方法是在java.lang.Object类提供的,使用的时候需要注意: (1)这三个方法需要在synchronized方法或者同步快中调用; (2)调用wait/notify/notifyAll的对象必须和synchronized对应的对象一致。也即如果synchronized(var原创 2017-07-30 11:09:14 · 377 阅读 · 0 评论 -
Java多线程系列3(线程同步)
1 为什么要线程同步竞态条件:如果计算的结果取决于多个线程的执行顺序,那么就会发生金态条件。常见的竞态条件是:先检测后执行,执行依赖于检测的结果。检测的结果又依赖于线程实际的执行顺序,这样,就可能出现顺序不一样时,检测的结果不一样,从而导致执行结果不一样。 多线程访问同一个资源,如果出现竞态条件,结果就不是确定的,此时就需要考虑线程同步。2 多线程出错例子看一下下面这个例子:多个线程对同一个变量执原创 2017-07-29 22:39:13 · 285 阅读 · 0 评论 -
Android进阶系列之3:IntentService
1 IntentService有什么优势和限制?考虑一个场景:在 Android中点击一个按钮下载一个文件。 常规实现一般都是如此:启动一个Activity,Activity中放置一个按钮,点击按钮,启动一个Service来下载文件。由于UI线程不能进行耗时操作。而Service默认运行在UI线程,所以Service中必须启动一个Thread来下载文件。文件下载完毕以后,我们还需要在手动或者自动的原创 2017-08-13 15:49:05 · 319 阅读 · 0 评论