码迷,mamicode.com
首页 >  
搜索关键字:java多线程 executorservice    ( 3726个结果
Java多线程:生产者消费者更佳的解决方法(确定不会出现死锁)
今天看了一片博文,讲Java多线程之线程的协作,其中作者用程序实例说明了生产者和消费者问题,但我及其他读者发现程序多跑几次还是会出现死锁,百度搜了下大都数的例子也都存在bug,经过仔细研究发现其中的问题,并解决了,感觉有意义贴出来分享下。...
分类:编程语言   时间:2014-10-17 00:13:33    阅读次数:291
soa---java 多线程的---锁
soa---java 多线程的---锁...
分类:编程语言   时间:2014-10-15 15:47:20    阅读次数:262
volatile与synchronized关键字
volatile关键字相信了解Java多线程的读者都很清楚它的作用。volatile关键字用于声明简单类型变量,如int、float、boolean等数据类型。如果这些简单数据类型声明为volatile,对它们的操作就会变成原子级别的。但这有一定的限制。例如,下面的例子中的n就不是原子级别的:pub...
分类:其他好文   时间:2014-10-14 19:50:29    阅读次数:123
synchronized与static synchronized 的区别、synchronized在JVM底层的实现原理及Java多线程锁理解
本Blog分为如下部分: 第一部分:synchronized与static synchronized 的区别 第二部分:JVM底层又是如何实现synchronized的 第一部分:synchronized与static synchronized 的区别 1、synchronized与static synchronized 的区别       synchronized...
分类:编程语言   时间:2014-10-14 02:24:47    阅读次数:365
Java多线程、主线程等待所有子线程执行完毕、共享资源
1.Java创建与启动线程Java提供两种方式创建和启动线程:1.直接Thread类,2.实现Runable接口。1.1 继承Thread类public class myThread extends Thread { public void run(){ for(int i=0;i0){ 6 ...
分类:编程语言   时间:2014-10-14 02:17:17    阅读次数:296
Java多线程之~~~线程安全容器的非阻塞容器
在并发编程中,会经常遇到使用容器。但是如果一个容器不是线程安全的,那么他在多线程的插入或者删除的过程 中就会出现各种问题,就是不同步的问题。所以JDK提供了线程安全的容器,他能保证容器在多线程的情况下安全的插 入和删除。当然,线程安全的容器分为两种,第一种为非阻塞似的,非阻塞的意思是当请求一个容器为空或者这个请求 不能执行的时候,就会报出异常,第二种阻塞的意思是,不能执行的命令不会报出异常,...
分类:编程语言   时间:2014-10-13 00:28:18    阅读次数:353
使用无锁的方式和有锁的方式的程序性能对比
这里分别使用有锁和无锁两种方式,对一个数值进行增加,一直增加到100000,然后输出使用时间的长短。 1 import java.util.concurrent.ExecutorService; 2 import java.util.concurrent.Executors; 3 import...
分类:其他好文   时间:2014-10-13 00:03:08    阅读次数:335
java多线程样例
这里我们做一个完整的样例来说明线程产生的方式不同而生成的线程的差别: package debug;import java.io.*;import java.lang.Thread;class MyThread extends Thread{ public int x = 0; public vo.....
分类:编程语言   时间:2014-10-12 23:28:28    阅读次数:333
C++ async task
最近在搞Android 开发,里面多线程的使用比较频繁,java多线程接口很方便。 Thread, AysncTask, Handler 这些接口比起posix提供的pthread_create()等一系列接口方便很多,想到C++11也支持方便的多线程编程,最近java中AsyncTask用的比.....
分类:编程语言   时间:2014-10-12 22:37:08    阅读次数:290
带有返回值的 Callable 使用
工作中很多涉及到多线程的地方都implemnets Runable 接口 或者是 extends Thread 抽象类,但是这样子的话得不到返回值。 如果以下场景: 在多线程中计算值,线程结束后需要携带返回值。 这时就需要Callable接口,实现改接口后需要实现方法 call 。改接口需要ExecutorService的submit方法执行,执行结果包装在 Future泛型类中。 通过Future类的get()方法取得返回值,get()是阻塞的,在线程执行前调用get()方法会一直阻塞着。...
分类:其他好文   时间:2014-10-09 20:44:17    阅读次数:214
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!