- 浏览: 1572054 次
- 来自: 上海
文章分类
- 全部博客 (374)
- Java (101)
- Struts (54)
- Oracle (30)
- JavaScript (16)
- Spring (27)
- Hibernate (16)
- MyEclipse (3)
- JSF (1)
- FreeMarker (2)
- SiteMesh (2)
- JfreeChart (2)
- Ibatis (2)
- JSP (12)
- MyBatis (4)
- SWFupload (1)
- EJB (4)
- Jboss (4)
- WebService (2)
- Linux (16)
- Android (2)
- XML (6)
- Java 网络编程 (13)
- AXIS2 (1)
- FTP (1)
- Jswing (1)
- Socket (3)
- 杂文选集 (6)
- solr (2)
- PS (1)
- Tomcat (7)
- JDBC (9)
- Highcharts (1)
- maven (1)
- Nodejs (0)
- navicat (2)
- Exception (5)
- eclipse (3)
- jQuery (1)
- springMVC (4)
- MySQL (11)
- SVN (1)
- Sql Server (1)
- zookeeper (1)
- JVM (1)
- Groovy (2)
- Git (1)
- Nginx (1)
- DynamicReport (1)
- IDEA (2)
- JasperReports (1)
- Postgresql (2)
- Mac (1)
- gradle (1)
- 数据结构算法 (1)
最新评论
-
hpu145:
引用引用
java 千分位的添加和去除 -
被遗忘的下路:
少了个junit-4.8.2的包
SSH2整合完整案例(四十三) -
白天看黑夜:
java过滤emoji字符处理,希望能帮到你http://ww ...
emoji 表情图片解决方法 -
caipeiming:
这个挺好JavaScript实现input输入框控件只允许输入 ...
js 控制文本框只能输入中文、英文、数字等 -
双子树:
东西太好啦受教啊
Struts2 JSP中将list,set ,Map传递到Action然后<s:iterator>遍历(三十五)
import java.util.concurrent.Exchanger; import java.util.concurrent.ExecutorService; import java.util.concurrent.Executors; /** * Exchange 2个线程之间交换数据 */ public class ExchangeTest { /** * @param args */ public static void main(String[] args) { // TODO Auto-generated method stub ExecutorService service=Executors.newCachedThreadPool(); final Exchanger exchanger=new Exchanger(); service.execute(new Runnable(){ @Override public void run() { try { String data1="zxx"; System.out.println("线程"+Thread.currentThread().getName()+"正在把数据"+data1+"换出去"); Thread.sleep((long)Math.random()*10000); String data2=(String)exchanger.exchange(data1); System.out.println("线程"+Thread.currentThread().getName()+"换回的数据为"+data2); } catch (Exception e) { // TODO: handle exception } } }); service.execute(new Runnable(){ @Override public void run() { try { String data1="lhm"; System.out.println("线程"+Thread.currentThread().getName()+"正在把数据"+data1+"换出去"); Thread.sleep((long)Math.random()*10000); String data2=(String)exchanger.exchange(data1); System.out.println("线程"+Thread.currentThread().getName()+"换回的数据为"+data2); } catch (Exception e) { // TODO: handle exception } } }); service.execute(new Runnable(){ @Override public void run() { try { String data1="happy"; System.out.println("线程"+Thread.currentThread().getName()+"正在把数据"+data1+"换出去"); Thread.sleep((long)Math.random()*10000); String data2=(String)exchanger.exchange(data1); System.out.println("线程"+Thread.currentThread().getName()+"换回的数据为"+data2); } catch (Exception e) { // TODO: handle exception } } }); } }
结果:
线程pool-1-thread-1正在把数据zxx换出去
线程pool-1-thread-2正在把数据lhm换出去
线程pool-1-thread-3正在把数据happy换出去
线程pool-1-thread-3换回的数据为zxx
线程pool-1-thread-1换回的数据为happy
发表评论
-
检测一个字符串是否在jvm的常量池中
2018-12-18 17:34 940public static boolean inPool( ... -
UTC时间, GMT时间 ,夏令时
2017-08-18 15:12 2226经常混淆于此,特地研究了一下,记录在此以备忘。 整个地 ... -
java 反射List
2017-02-18 01:58 5590package com.enhance.reflect; ... -
JDK1.5 CountDownLatch
2016-08-04 16:25 1015/* * 还有一个利用场景: ... -
java CyclicBarrier 循环障碍阻塞
2016-08-03 23:54 952//一个同步辅助类,它允许一组线程互相等待,直到到达某个公 ... -
java 信号灯 Semaphore
2016-08-03 23:53 1781更多介绍http://blog.csdn.net/java20 ... -
java 使用读写锁设计一个缓存模型
2016-08-03 23:49 1369import java.util.HashMap; ... -
java 读写锁
2016-08-03 23:46 776import java.util.Random; i ... -
java 多个线程之间同步通信
2016-08-02 17:16 2363import java.util.concurrent ... -
jdk1.5 锁 Lock 和 Condition
2016-08-02 17:03 877// lock 练习 public class Lock ... -
JDK1.5 获取线程执行结果 Callable Future
2016-08-02 15:08 1129import java.util.Random; i ... -
JDK1.5 线程池
2016-08-02 14:48 763import java.util.concurrent ... -
java 多线程ThreadLocal
2016-08-02 00:13 1107import java.util.Random; ... -
java 定时器 Timer
2016-08-01 16:53 3842import java.util.Calendar; ... -
java 多线程同步+通信
2016-08-01 16:48 923/** *父子线程 交替打印10 次, 100次 ... -
java 线程同步
2016-08-01 16:43 975import java.util.concurrent.l ... -
java多线程练习
2016-08-01 16:35 1796Java 传统多线程 Java 多线程同步 Java 多线 ... -
java 传统多线程
2016-08-01 16:34 963/** * 传统多线程 */ public ... -
java 图片,剪切,缩放
2016-01-06 10:21 2172package out; import ja ... -
java术语(PO/POJO/VO/BO/DAO/DTO)
2014-11-27 11:45 1939PO(persistant object) 持久 ...
相关推荐
包含 jdk1.5免安装、jdk1.6免安装、jdk1.8(32和64)
jdk1.5.exe jdk1.5 jdk1.5下载
JDK1.5,JDK1.5
前几天上传过这个资源,因为是在jdk1.6上开发的, 测试了一下在jdk1.5上不能用, 今天重新用jdk1.5编译了一下, 这个是可以支持jdk1.5+的 将 pu-xlscommon-1.0.0.jar 添加到工程的 /lib 目录下 用法在附件中 XlsTest....
绝版jdk1.5,非常不错的资源。用起来很好。是 Java语言对Bean类属性、事件的一种缺省处理方法。例如类A中有属性name,那我们可以通过getName,setName来得到其值或者设置新 的值。通过getName/setName来访问name属性,...
测试可用的linux版jdk1.5,jdk-1_5_0_19-linux-i586-rpm.bin
通过接口java.util.concurrent.Callable 的使用 实现线程的启用,程序为一个main的例子,可以直接运行(jdk1.5 以上版本)
jdk 1.5 中文 api chm jdk 1.5 中文 api chm
jdk1.5.0.22 是jdk1.5的最后一版,jdk1.5 windows 64位官方正式版,绝对有效,jdk1.5 windows 64位官方正式版,绝对有效
JDK1.5 API完整版JDK1.5 API完整版JDK1.5 API完整版
jdk1.5.0.22 是jdk1.5的最后一版
JDK1.5+1.6整合版(文件为txt文件,里面有百度网盘下载地址<文件太大所以用网盘>) 文件里含有1.5和1.6两个版本的JDK,并且附有一环境变量创建办法以及切换版本方法
很实用的JAVA API中文参考文档,如果你开始讨厌HTML版本的API中文文档,试试这个吧,强大的索引功能使你开发更加愉快,分两卷,要都下了才能解压。
详细介绍java对象的使用和说明详细介绍java对象的使用和说明详细介绍java对象的使用和说明详细介绍java对象的使用和说明详细介绍java对象的使用和说明
jdk1.5压缩包 解压缩可用 用于Windows系统
Jdk1.5Doc_CN.chm Jdk1.5Doc_CN.chm Jdk1.5Doc_CN.chm Jdk1.5Doc_CN.chm
“JDK1.5”(开发代号猛虎)的一个重要主题就是通过新增一些特性来简化开发,这些特性包括泛型,for-else 循环,自动装包/拆包,枚举,可变参数, 静态导入
Java-jdk1.5安装包
转载 jdk1.5的一些新特性,希望能帮助大家!
jdk1.5 64位 windows版