- 浏览: 1379741 次
- 性别:
- 来自: 江西
文章分类
- 全部博客 (287)
- oracle (30)
- Java (73)
- MySQL (16)
- Myeclipse/eclipse (12)
- javascript (15)
- JSP/Servlet (7)
- maven (14)
- AJAX (2)
- JQuery (9)
- tomcat (8)
- spring (21)
- Linux (28)
- PHP (9)
- UI (1)
- 编程错误及处理 (38)
- 多线程 (18)
- hibernate (10)
- Web Service (3)
- struts2 (6)
- log4j (3)
- SVN (4)
- DWR (1)
- lucene (1)
- 正则表达式 (4)
- jstl (2)
- SSL (3)
- POI (1)
- 网络编程 (1)
- 算法 (2)
- xml (4)
- 加密解密 (1)
- IO (7)
- jetty (2)
- 存储过程 (1)
- SQL Server (1)
- MongoDB (1)
- mybatis (1)
- ETL (1)
- Zookeeper (1)
- Hadoop (5)
- Redis (1)
- spring cloud (1)
最新评论
-
ron.luo:
牛逼,正解!
maven设定项目编码 -
lichaoqun:
java.sql.SQLException: Can't call commit when autocommit=true -
Xujian0000abcd:
Thanks...
Cannot proxy target class because CGLIB2 is not available. Add CGLIB to the clas -
renyuan2ni:
[i][b][u]引用[list]
[*][img][flas ...
Manual close is not allowed over a Spring managed SqlSession -
851228082:
宋建勇 写道851228082 写道<!-- 文件拷贝时 ...
maven设定项目编码
/** * ThreadPoolTest.java * cn.com.songjy.test.socket.thread * Function: TODO * * version date author * ────────────────────────────────── * 1.0 2013-8-17 songjy * * Copyright (c) 2013, TNT All Rights Reserved. */ package cn.com.songjy.test.socket.thread; import java.util.concurrent.ExecutorService; import java.util.concurrent.Executors; import java.util.concurrent.TimeUnit; import org.apache.commons.logging.Log; import org.apache.commons.logging.LogFactory; /** * ClassName:ThreadPoolTest java5线程并发库的应用 * * @author songjy * @version 1.0 * @since v1.0 * @Date 2013-8-17 下午2:31:49 */ public class ThreadPoolTest { private static Log log = LogFactory.getLog(ThreadPoolTest.class); public static void main(String[] args) { // ExecutorService thread_pools = Executors.newFixedThreadPool(3);// 创建固定线程池,每次只执行3个任务,其他等待 // ExecutorService thread_pools = Executors.newCachedThreadPool();//自动创建和回收线程,来多少任务,就创建多少线程 ExecutorService thread_pools = Executors.newSingleThreadExecutor();// 单个线程,不管来多少任务,每次只有一个线程执行任务 for (int i = 0; i < 10; i++) { final int task = i; thread_pools.execute(new Runnable() { @Override public void run() { for (int i = 0; i < 10; i++) {// 每个任务循环10次 log.info(Thread.currentThread().getName() + " is looping of " + i + " task of " + task); try { Thread.sleep(20); } catch (InterruptedException e) { log.error(e.getMessage(), e); } } } }); } log.info("all of 10 tasks have commited"); thread_pools.shutdown();// 等待所有任务完毕后关闭 // thread_pools.shutdownNow();//立即关闭 // 线程池调度5秒后执行 Executors.newScheduledThreadPool(3).schedule(new Runnable() { @Override public void run() { log.info("bombing"); } }, 5, TimeUnit.SECONDS); // 线程池调度6秒后执行,且每隔2秒循环执行 Executors.newScheduledThreadPool(3).scheduleAtFixedRate(new Runnable() { @Override public void run() { log.info("bombing"); } }, 6, 2, TimeUnit.SECONDS); } }
java1.5线程并发库的应用
Java 并发 – 第七部分:Executors 与线程池
发表评论
-
java.io.NotSerializableException: java.util.ArrayList$SubList
2016-03-15 11:36 2862错误信息: 原代码: if (null != dto ... -
java.lang.NoSuchMethodError
2015-10-30 19:50 1233在执行命令 java -Djava.ext.dirs=./de ... -
OutOfMemoryError
2015-01-07 10:49 676错误信息: 执行命令(修改前): java -Djava. ... -
自定义ClassLoader
2014-12-14 17:13 888一、自定义类加载器代码: package foo; im ... -
ExecutorService.shutdown()应该是在线程执行完毕后,才会去关闭
2014-04-29 13:03 19574看到一个博客,如下 Jav ... -
URL传递中文参数乱码问题
2014-03-14 12:55 1154项目特殊要求,form表单使用get方式提交,由此出现了中文乱 ... -
Java使用正则进行奇偶替换
2013-12-30 11:20 1593/** * 将位于偶数位的数字1替换为2 */ ... -
Java调用ping命令
2013-11-26 10:26 3713package cn.com.songjy; impor ... -
Linux开机启动Java程序
2013-11-25 15:26 3589一、编写启动Java程序shell脚本(smssend.sh) ... -
单例模式
2013-11-05 09:58 791Java之美[从菜鸟到高手演变]之设计模式 Java开发中 ... -
判定2个对象相等之重写equals方法
2013-10-18 11:03 1096package cn.com.songjy.test; ... -
SAX解析XML文件示例
2013-09-13 17:32 1046package cn.com.songjy.test.xml; ... -
二分查找算法(Binary Search)
2013-09-13 17:01 2450项目中遇到需要从数组中查找数据,但是算法很多,于是根据项目需求 ... -
Iterate over rows and cells(EXCEL文件的读取)
2013-09-13 14:13 4098package cn.com.songjy.test.exce ... -
jdk1.5的Exchanger同步工具
2013-08-27 14:04 703package cn.com.songjy.test.sock ... -
jdk1.5的CountDownLatch同步工具
2013-08-27 13:37 813package cn.com.songjy.test.sock ... -
jdk1.5的Semaphere同步工具
2013-08-23 14:20 1094package cn.com.songjy.test.so ... -
jdk1.5条件阻塞Condition的应用
2013-08-23 09:42 1366package cn.com.songjy.test.sock ... -
jdk1.5读写锁技术的妙用
2013-08-19 22:00 1393/** * ReadWriteLockTest.java ... -
jdk1.5的线程锁技术
2013-08-19 20:25 963/** * LockTest.java * cn.co ...
相关推荐
并发库高级应用\多线程\Java
在JDK5中,多线程并发库引入了一系列新的特性,极大地增强了Java处理并发问题的能力。以下是关于这个主题的详细解释: 1. **线程**: - **线程与进程的关系**:进程是一个正在执行的程序实体,而线程是进程内部的...
在JDK5中,Java引入了一套强大的多线程并发库,极大地提升了多线程编程的效率和安全性。这个库提供了丰富的类和接口,使得开发者能够更好地控制线程的执行、同步和通信。 1. **线程** - **线程与进程的关系**:...
张孝祥Java多线程与并发库高级应用学习笔记,很经典的学习多线程和并发的资料。张孝祥Java多线程讲义笔记由张孝祥亲自整理,很实用的。
Java 模拟线程并发是编程领域中的一个重要概念,尤其在多核处理器和高并发应用中,理解并熟练掌握线程并发技术对于提升程序性能至关重要。在Java中,线程并发可以通过多种方式实现,包括继承Thread类、实现Runnable...
资源名称:Java多线程与并发库高级应用视频教程22集资源目录:【】01传统线程技术回顾【】02传统定时器技术回顾【】03传统线程互斥技术【】04传统线程同步通信技术【】04传统线程同步通信技术_分割纪录【】05线程...
Java5线程并发库的应用 - **高级特性**:包括`ExecutorService`、`Future`、`Semaphore`、`CountDownLatch`、`CyclicBarrier`、`Exchanger`等工具,提供了更灵活、强大的线程调度和控制机制。 - **优势**:减少...
"基于Qt的多线程并发服务器"是一个典型的解决方案,它利用了Qt库的强大功能,特别是其对多线程的支持,来处理来自多个客户端的并发请求。下面我们将深入探讨这个主题。 首先,Qt是一个跨平台的应用程序开发框架,...
在处理大量图像或需要快速响应时间的应用场景中,多线程并发识别可以显著提升效率。以下将详细介绍如何利用Tesseract OCR实现多线程并发识别,以及可能涉及的相关技术点。 首先,理解Tesseract OCR的基本工作原理是...
本教程的焦点在于“张孝祥Java多线程与并发库高级应用视频教程”的实践代码,旨在帮助开发者深入理解并熟练掌握这些关键概念。 首先,我们要明确多线程的概念。在单处理器系统中,多线程允许程序同时执行多个任务,...
线程并发的使用可以显著提升程序处理能力,例如在服务器端处理大量用户请求时,如果每个请求都由单独的线程处理,那么处理速度将大大提高。但同时,多线程并发也会引入一些问题,如数据竞争和同步问题。 为了解决...
在深入探讨Java多线程与并发库的高级应用前,有必要了解一些基础概念。Java线程是Java程序的基础,它代表程序中的一条执行线索或线路。在Java中创建线程有两种传统方式,一种是通过继承Thread类并覆盖其run方法来...
总的来说,Java线程并发库是Java程序员必备的知识点,它提供了强大且灵活的工具来处理并发问题,使得开发者能够编写出高效、可扩展的多线程应用。深入理解这些概念和类,对于优化Java应用的性能至关重要。
这里,我们主要探讨的是如何通过编写多线程并发程序来优化应用程序的性能,提高系统的处理能力。 首先,多线程是指在一个进程中同时执行多个线程。线程是操作系统调度的基本单位,它允许程序同时执行多个任务。多...
在《java并发库高级应用源码--张孝祥》中,我们将会深入探讨Java中的线程管理和并发控制策略,这对于我们理解和优化多线程程序至关重要。 首先,Java中的`Thread`类是实现并发的基础,它代表了一个独立的执行线程。...
"MultiHttp高性能的PHP封装的HTTPRestful多线程并发请求库" 这个标题揭示了几个关键的IT知识点: 1. **PHP**:PHP是一种广泛使用的开源服务器端脚本语言,尤其适合Web开发。它允许开发者创建动态、交互式网页。 2....
在多线程并发服务器中,C++提供了STL(标准模板库),其中的`<thread>`库为我们创建和管理线程提供了便利。同时,C++允许直接操作内存,这对于管理服务器的缓冲区(Buffer)至关重要。 2. **多线程技术**: 多线程...
根据给定文件的信息,我们可以提炼出以下关于Java多线程与并发库的相关知识点: ### Java多线程基础 1. **线程的概念**:在Java中,线程是程序执行流的基本单元。一个标准的Java应用程序至少有一个线程,即主...
总的来说,"mtc_多线程并发拷贝程序.zip"为我们提供了一个研究和学习多线程并发技术在Linux环境下应用的实例,通过对这个程序的学习和分析,开发者可以加深对C++11多线程编程的理解,并能将其应用于自己的项目中,...