JDK 线程池
Executors.newCachedThreadPool(); //带缓存的 不够时自动添加
Executors.newSingleThreadExecutor(); //单个线程池 线程死掉后自动创建
Executors.newFixedThreadPool(10); //创建容纳N个线程的
Executors.newScheduledThreadPool(19); //创建定时器线程池
executo() 无返回结果
submit() 有返回结果的线程
Callable: //可返还结果的线程
ExecutorService threadpol = Executors.newSingleThreadExecutor();
Future<String> future = threadpol.submit(
new Callable<String>(){
public String call(){
return "aaaa";
}
}
system.out.print(Future.get());
);
Lock lock = new ReentrantLock(); //lock 对象
Condition condition = lock.newCondition(); // 条件. 通讯对象
condition.await(); //不是 object的 wait
condition.signal(); //唤醒
try{
lock.lock();
...
}finally{
lock.unLock();
}
ReentrantReadWriteLock rwl = ReentrantReadWriteLock(); //文件锁
rwl.readLock().lock();
rwl.writeLock().lock();
条件等待尽量使用while(){
}
多线程关键字
Executors.newCachedThreadPool(); //带缓存的 不够时自动添加
Executors.newSingleThreadExecutor(); //单个线程池 死掉后再创建
Executors.newFixedThreadPool(10); //创建容纳N个线程的
Executors.newScheduledThreadPool(19); //创建定时器线程池
Lock lock = new ReentrantLock(); //lock 互斥锁 对象
Condition condition = lock.newCondition(); // 条件. 通讯对象
Condition //条件锁
Semaphore //信号量 类似执行授权 (最多有3个人可以走)
CyclicBarrier //类似集合点 (必须3个人同时到才能走)
CountDownLatch //计数器 计时器效果 某时间点同时执行 CountDownLath a = new CountDownLath(1); a.await(); a.countDown();
Exchanger //数据交换 Exchanger a = new Exchanger()//放主线程; a.exchange("asd")
ArrayBlockingQueue //阻塞队列 ArrayBlockingQueue 啊 = new ArrayBlockingQueue(); a.put(1);//阻塞 a.add(1); //a.tack(); 获取
作者“光头的专栏”
分享到:
相关推荐
java 并发包 java 并发包 java 并发包
Java并发包思维导图.xmind Java并发包思维导图.xmind Java并发包思维导图.xmind Java并发包思维导图.xmind Java并发包思维导图.xmind Java并发包思维导图.xmind
java并发包讲解 可以找我要代码,qq 3341386488 ## 线程安全-并发容器JUC--原理以及分析 1.arrayList --copyonWriteArraylist 优缺点 2.HashSet,TreeSet -- CopyONWriteArraySet,ConcurrentSkipListSet 3....
java并发包源码分析(3)ThreadLocal 详细配图讲解 java并发包源码分析(3)ThreadLocal 详细配图讲解
Java分布式应用学习笔记04JDK的并发包的集合总结
java多线程处理数据库数据,使用并发包,无框架,可批量处数据库数据,进行增删改。。等等操作。
java并发包之Callable和Future java并发包之Callable和Future java并发包之Callable和Future java并发包之Callable和Future java并发包之Callable和Future java并发包之Callable和Future
ConcurrentSkipListMap等类的概念、原理、数据结构、使用场景描述。
java多线程编程大总结:Java 线程是 Java 语言中一个非常重要的部分,Java5 之前,多线程的语言支持还是比较弱的, 内容也较少,写一个复杂的多线程程序是相当有挑战性的。 在Java5 以后,Java 对多线程做了很多...
进程是指一个内存中运行的应用程序,每个进程都有自己独立的一块...这部分内容大大增强了Java多线程编程的能力,通过使用Java5线程新特征的API,可以很容易的做出复杂的多线程程序。与其他语言相比,已经是相当强悍了
并发包总结 思维导图 concurrent
1. java.util.concurrent - Java 并发工具包 2. 阻塞队列 BlockingQueue 3. 数组阻塞队列 ArrayBlockingQueue 4. 延迟队列 DelayQueue 5. 链阻塞队列 LinkedBlockingQueue 6. 具有优先级的阻塞队列 ...
Java 7并发包最新思维导图,基于《深入浅出Java concurrency》修改
多线程,精确20ms定时器,RTP发包转发收包统计,压力测试工具 C语言 源代码
java.util.concurrent包提供了创建并发应用程序的工具,本资源主要是对该api进行详细的解读,并对api的使用做出安全高效的引用建议.
16:55:20.677 [main] INFO org.malin.allutils.makefile.ReadFileNameUtil - 获取到 文件名称: 5.JDK并发包1.pdf 16:55:20.677 [main] INFO org.malin.allutils.makefile.ReadFileNameUtil - 获取到 文件名称: 6....
并发包 同步容器类 Vector与ArrayList区别 1.ArrayList是最常用的List实现类,内部是通过数组实现的,它允许对元素进行快速随机访问。数组的缺点是每个元素之间不能有间隔,当数组大小不满足时需要增加存储能力,...
对象交换器:当两个线程处理的结果需要交换进行处理的时候,使用并发包中适合多线程情况下的数据结构:非阻塞队列:ConcurrentLinkedQueue Conc
java实现的8583发包解包,里边是一个详细的demo,包含socket通讯和银联加密算法
以太网发包工具,随手笔记,防止忘记