- 浏览: 308593 次
- 性别:
- 来自: 北京
文章分类
- 全部博客 (118)
- oracle (16)
- java (13)
- jquery (16)
- hibernate (2)
- spring (14)
- struts (2)
- eclipse (1)
- birt (5)
- integrated skill (13)
- linux (9)
- css+html (5)
- redis (1)
- jqgrid (4)
- mybatis (2)
- multithreading (3)
- jvm (1)
- mvn (3)
- php (2)
- jms (2)
- photoshop (1)
- springmvc (3)
- cluster (1)
- cache (1)
- jquery-ui (2)
- 英语词根 (0)
- svn (0)
- ide (1)
- mysql (3)
- rich-text (1)
- golang (8)
- mac 10 (1)
- android (1)
- react (0)
- bootstrap (2)
- css (2)
- 1 (0)
- beego (1)
- pictures (1)
- java小生转战 (0)
- 转站通知 (0)
- 转站通知,,,啊啊啊 (1)
- threeperson (1)
- unity (1)
最新评论
-
zld406504302:
aaaddddddd
java小生转站threeperson博客 -
zld406504302:
aaaaaddd
java小生转站threeperson博客 -
zld406504302:
aaaaaaaaaaaa
java小生转站threeperson博客 -
乌发舞天:
UEditor 实例 -
van_2013:
请问这是订阅模式的配置吗?
SPRING JMS 整合ACTIVEMQ
把项目中一个大文件对比进行了简单了模拟,多线程将大文件下的多个文件分割,lock控制差异同步写入到一个list中;当所有线程执行完毕,read 所有内容。
package cn.com.ld.study.thread; import java.util.ArrayList; import java.util.Collection; import java.util.Iterator; import java.util.List; import java.util.concurrent.Callable; import java.util.concurrent.ExecutorService; import java.util.concurrent.Executors; import java.util.concurrent.Future; import java.util.concurrent.locks.Lock; import java.util.concurrent.locks.ReentrantLock; import java.util.concurrent.locks.ReentrantReadWriteLock; /** * @filename: LockTest * @description: TODO * @author java 小生 * @date 2013-2-18 下午6:07:34 */ public class LockTest { Lock rlock = new ReentrantReadWriteLock().writeLock(); Lock lock = new ReentrantLock();// 锁 private Collection<String> strc = new ArrayList<String>(); private int readSequence; private int writeTimes = 0; LockTest(int writeTimes) { this.writeTimes = writeTimes; } public boolean write(String name) { try { lock.lock(); readSequence++; System.out.println(name + " 被" + readSequence + "次写入"); strc.add(name + readSequence); } finally { lock.unlock(); } return writeTimes == readSequence ? true : false; } public void read() { System.out.println("读取写入内容开始....."); for (Iterator<String> iterator = strc.iterator(); iterator.hasNext();) { String type = (String) iterator.next(); System.out.println(type+" 被输出。。。。"); } System.out.println("读取写入内容结束....."); } public static void main(String[] args) throws InterruptedException { final LockTest lockTest = new LockTest(100); List<Future<Boolean>> fList = new ArrayList<Future<Boolean>>(); Callable<Boolean> write = new Callable<Boolean>() { @Override public Boolean call() throws Exception { return lockTest.write("张三"); } }; ExecutorService cachedService = Executors.newCachedThreadPool(); Future<Boolean> future = null; for (int i = 0; i < 100; i++) { future = cachedService.submit(write); fList.add(future); } while (true) { int writeLent = lockTest.strc.size() ; if (writeLent == 100 && fList.get(99).isDone()) { lockTest.read() ; break ; } } } }
发表评论
-
mvn assembly package jar 无法运行
2015-04-27 20:04 736项目中要跑了一个jar工程,每天做一次数据结 ... -
SPRING INTERCEPTOR 监控 JMS 发送接受性能
2013-07-18 17:17 1555将spring aspectj 和 jms 整合了一下, ... -
SPRING JMS 发送 接受 性能监控
2013-07-18 17:13 0将spring aspectj 和 jms 整合了一下, ... -
SLF4J jar包冲突的迷惑
2013-07-14 12:42 1458Running com.cn.ld.modules.jms.J ... -
SLF4J jar包冲突的迷惑
2013-07-14 12:42 0Running com.cn.ld.modules.jms.J ... -
spring jms 异步接受消息
2013-05-22 21:46 24spring jms 的监听器是可配置的,而且通常会交 ... -
自定义异常在指定的抛出次数和指定的时间内抛出,否则不抛出
2013-04-01 23:36 54今天有人提出一个问题: 1:自定义一个异常,默认抛出信息“我是 ... -
ExecutorService invokeAll 实例
2013-04-01 15:08 773810个班级,每个班级20名学生,在指定的时间内查询每 ... -
CountDownLatch 实例
2013-03-29 13:36 987多线程模拟记者发布会。每个记者提一个问题,且发布会要等每 ... -
用enum替换Static final 常量
2013-03-27 16:10 2208一个task 需要对对8个元件页面显示字段的值进行格式 ... -
jar包方式发布项目
2013-03-26 15:20 42项目组新来了一个外包美工,做css+div+js特效。 ... -
ReadWriteLock 实例
2013-03-22 19:17 251ReadWriteLock 具有读写互斥,写同步,读 ... -
velocity 实例
2013-03-18 22:26 1975通过velocity对字符串进行格式化输出 packag ... -
Jsoup 解析html
2012-06-04 15:42 1408Jsoup 遍历html 是很便捷的,查看api 发现他的很多 ... -
java调用 数组作为参数的管道表函数
2012-05-03 17:29 495需求:用户导入100万白 ... -
debug 、info、waring、error、fatal
2012-03-23 15:08 1941源自:键盘动物_java ja ... -
java,spring,aspectj
2011-11-16 19:39 1151最近要项目有个新需求,统计查询的接口要进行 ... -
birt集成js、jsp,实现弹出层,局部刷新
2011-10-08 18:04 6987使用birt已有个把月,此处和大家分 ... -
Thread 初探
2011-09-22 17:12 1278对线程了解不多,且不经常去用,最近想起,小小了解,且 ... -
java 本地解析sql文件,执行批量更新
2011-03-22 00:41 2017java 解析sql文件,批量更 ...
相关推荐
java程序(利用线程)。一个线程往成绩单中写入课程名和成绩,一个线程从成绩单中读出课程和成绩,并将课程和成绩显示在屏幕上。
├—使用多线程读/写/校验,重叠IO,直接IO,从而实现设备最高读写性能。 ├—可以使用 UNIX通配符 样式的 包含/排除 筛选器。 ├—运行速度快,不占资源,因为仅使用 Win32 API 和 C 运行时设计,没有使用 MFC。 ...
16.2 多线程化 330 16.3 服务器捆绑 333 16.4 认证 336 16.5 超时和重传 338 16.6 调用语义 342 16.7 客户或服务器的过早终止 343 16.8 XDR:外部数据表示 345 16.9 RPC分组格式 361 16.10 小结 ...
16.2 多线程化 330 16.3 服务器捆绑 333 16.4 认证 336 16.5 超时和重传 338 16.6 调用语义 342 16.7 客户或服务器的过早终止 343 16.8 XDR:外部数据表示 345 16.9 RPC分组格式 361 16.10 小结 365 习题 366 后记 ...
16.2 多线程化 330 16.3 服务器捆绑 333 16.4 认证 336 16.5 超时和重传 338 16.6 调用语义 342 16.7 客户或服务器的过早终止 343 16.8 XDR:外部数据表示 345 16.9 RPC分组格式 361 16.10 小结 365 习题 366 后记 ...
16.2 多线程化 330 16.3 服务器捆绑 333 16.4 认证 336 16.5 超时和重传 338 16.6 调用语义 342 16.7 客户或服务器的过早终止 343 16.8 XDR:外部数据表示 345 16.9 RPC分组格式 361 16.10 小结 365 习题 ...
其中包括文件、文件映射、进程、线程、安全和同步对象等 CompareFileTime 对比两个文件的时间 CopyFile 复制文件 CreateDirectory 创建一个新目录 CreateFile 打开和创建文件、管道、邮槽、通信服务、设备以及...
“库文件名”以.lib或.obj为后缀的将被视为静态库,可使用绝对路径或相对路径(相对当前源代码所在目录),如依赖多个静态库请分别列出并以逗号分隔;“在库中的对应命令名”请务必准确填写静态库中公开导出的符号...
(10KB)<END><br>46,treestore.zip 将树的结构存入一个文本文件,可以读出及写入数的结构。(41KB)<END><br>47,MultControl.zip 这是一个多列的树/列表控制类库(87KB)<END><br>48,printctrl.zip 一个支持打印...
9.44、检查SD卡是否存在并且可以写入 267 9.45、获取SD卡的路径和存储空间 268 9.46、将程序安装到SD卡 268 9.47、创建一个SD映像 269 9.48、查看手机内存存储 269 9.49、在模拟器上调试GOOGLE MAPS 271 9.50、建立...
9.44、检查SD卡是否存在并且可以写入 267 9.45、获取SD卡的路径和存储空间 268 9.46、将程序安装到SD卡 268 9.47、创建一个SD映像 269 9.48、查看手机内存存储 269 9.49、在模拟器上调试GOOGLE MAPS 271 9.50、建立...