java并发编程
本博客专栏主要介绍了有关java并发编程方面的知识,通俗易懂,讲解的不是很枯燥,并且配有实例,希望能够分享跟大家
LuckyZhouStar
这个作者很懒,什么都没留下…
展开
-
Java并发编程(Callable、Future和CompletionService)
上篇博客主要讲解了一下java并发编程中的线程池,这篇呢来谈一下,java并发编程中的任务管理。这篇博客主要涉及到的Future、CompletionService、callable、runnable接口。 runnable接口 可以看看这个接口里面都有哪些操作 public interface Runnable { public abstract void run(原创 2015-09-04 18:11:00 · 2410 阅读 · 2 评论 -
Java并发编程(你不知道的线程池操作)
这几篇博客,一直在谈线程,设想一下这个场景,如果并发的线程很多,然而每个线程如果执行的时间很多的话,这样的话,就会大量的降低系统的效率。这时候就可以采用线程池的操作,来缓存我们并发操作的线程。 而对于java中的线程池,大家需要理解好ThreadPoolExecutor、AbstractExecutorService、ExecutorService和Executor这几个类之间的关系即原创 2015-09-04 09:40:01 · 5055 阅读 · 6 评论 -
java并发编程(对于线程内共享变量安全的思考)
上一篇博客讲解了,多个线程之间的互斥和同步的操作,一个是利用了锁的技术;另一个内则是利用了Object的notify和wait来实现同步操作。这篇博客呢,来谈一下对于线程内变量的安全问题。 经典的三层架构,我们都应该比较的熟知,分别是表现层—业务逻辑层——数据访问层。那么问题来了,我们如何来保证我们的业务逻辑层来维持同一个数据库连接对象呢? package com.test; import原创 2015-09-02 20:00:22 · 2504 阅读 · 1 评论 -
Java并发编程(详解wait(), notify(),sleep())
上一篇博客,重点讲解了java中锁的机制,省的在多线程之间出现混乱的局面,其实主要能够理解钥匙即可。如果要保证方法之间能够独立完全的执行,因此就必须所有的方法都共用一把钥匙。然后小编最后也总结了一下,在此也再说一下。 1.调用同一个对象中非静态同步方法的线程将彼此阻塞。如果是不同对象,则每个线程有自己的对象的锁,线程间彼此互不干预。 2.调用同一个类中的静态同步原创 2015-09-02 17:15:40 · 3684 阅读 · 5 评论 -
java并发编程(synchronized详解)
平时做项目的时候,或多说少的涉及到多线程的环境,那么如何在多线程中保证线程的安全,这是我们必须要考虑的,尤其是,银行之间的转账和取钱操作之间,必须要保证,每个时刻,只能有一个线程来操纵方法。而在java中为我们提供了synchronized关键字。 例如我们有一个大房子,里面有很多的房间,这些房间有上锁的(synchronized修饰的方法),和普通的房间(普通的方法),然而房子的钥匙就放置在原创 2015-09-01 20:55:22 · 1695 阅读 · 2 评论