
Java并发与多线程
glgl2424
希望能从这里学到有用的东西
展开
-
如何创建和使用线程
学习多线程,肯定先要学习如何在java中创建一个线程并且使用它,下面有几种常见的创建方式:原创 2013-12-16 20:07:24 · 623 阅读 · 0 评论 -
关于线程池
很多时候需要用多线程做处理,但是又不想自己管理线程的启动等管理,最好的办法是委托给现成的线程池来处理。spring提供了线程池,bean配置如下:bean id="mailTaskExecutor" class="org.springframework.scheduling.concurrent.ThreadPoolTaskExecutor"> property name="原创 2013-12-16 19:31:22 · 544 阅读 · 0 评论 -
关于并发
今天遇到多线程并发访问数据库的问题,思来想去,只好对临界区加锁,通过synchronized关键字。问题来了,我改对什么加锁?根据实际情况,是想对某个临界区(也就是一段代码)加锁,但是加锁的对象是资源,而不是代码啊。所以考虑将这段代码弄成一个方法,对方法加同步锁。可是方法也不是资源啊,对方法加锁的实质是什么呢?其实对方法加锁是对方法所属资源的加锁,如果是静态方法,那么其实是锁了他的类型原创 2013-12-16 19:31:06 · 516 阅读 · 0 评论 -
编写高性能java代码的注意点
从一片文章里看到的一些提高java代码性能的要点,筛选了一些对自己比较有用的或者容易犯错的:1. StringUtils是apache提供的,在使用split时效率较高,因为有缓存。JAVA自带的String.split效率较低,建议在频繁调用的地方不要使用正则表达式2. 尽量不要随意使用静态变量,因为static变量不会被gc及时释放,只有当所在的类被卸载时,才会被释放3. 在循环的原创 2013-12-16 19:31:04 · 562 阅读 · 0 评论 -
用实例揭示notify()和notifyAll()的本质区别
http://www.cnblogs.com/armyao/archive/2010/12/27/1917989.html转载 2014-04-29 07:58:16 · 511 阅读 · 0 评论 -
阻塞队列(BlockingQueue)源码分析
无意中看到concurrent包中有这个类,且原创 2014-05-06 08:43:39 · 700 阅读 · 0 评论 -
Java多线程并发编程学习
Java多线程并发编程学习笔记关键字:java.util.concurrent;Executors;Executor;ExecutorService;ScheduledExecutorService;ThreadFactory;Callable;AtomicLong;CountDownLatch;Lock;1 线程与任务1.1 理解 线程是比进程更小的实体,可以独立运行,能共原创 2014-05-05 11:11:52 · 759 阅读 · 0 评论 -
Java多线程总结之线程安全队列Queue
http://luckykapok918.blog.163.com/blog/static/2058650432012102741934399/转载 2014-07-07 08:49:30 · 677 阅读 · 0 评论 -
Callable接口实现线程执行结果的返回
很多时候线程执行完需要返回一个结果,此时可以实现Callable接口,该接口支持泛型,需要实现call函数。需要通过ExecutorService.submit()进行调用,在线程返回时,会自动执行call方法。submit方法会携带返回值,放到List>中。源码定义如下:public interface Callable { V call() throws Except原创 2014-04-19 08:28:29 · 901 阅读 · 0 评论 -
并发编程网
http://ifeve.com/java-nio-all/一个阿里的兄弟创办的,还不错转载 2014-05-04 23:52:35 · 663 阅读 · 0 评论 -
Java并发教程(Oracle官方资料)
http://www.iteye.com/magazines/131转载 2014-04-19 09:03:08 · 509 阅读 · 0 评论 -
Condition-线程通信更高效的方式
http://blog.youkuaiyun.com/ghsau/article/details/7481142转载 2014-07-09 21:20:50 · 670 阅读 · 0 评论