java多线程
文章平均质量分 91
李思苇
终身程序媛。不忘初心,方得始终。
展开
-
Executor、ExecutorService、Executors、ThreadPoolExecutor、Future、Runnable、Callable
ExecutorExecutor类的实例对象是一个执行已提交的任务的对象。该接口提供了一种将任务的提交与每个任务的运行机制分离的方法,包括线程使用细节、调度细节等。通常将为任务显示地创建线程替换为使用Executor来执行任务。比如,当有多个线程任务时,为每个任务创建一个线程并启动new Thread(new Runnable(){}).start()的代码,可以替换为:Executor executor = anExecutor;executor.execute(new Runnable(){}原创 2022-04-19 21:05:04 · 615 阅读 · 0 评论 -
sleep与wait
1、调用object.wait调用obj.wait()前,必须先获得obj的锁,否则会抛出IllegalMonitorStateException的异常。synchronized (obj) { obj.wait();lock与synchronize的区别与联系...原创 2019-09-23 16:49:46 · 95 阅读 · 0 评论 -
java多线程/磁盘IO过程详解:为什么说多线程能充分利用CPU,尤其是在有磁盘IO操作的时候
个人感觉讲的很详细,查到这篇文章,主要是为了弄清楚为什么IO还是会很占CPU,因为在大家一致认为的观点里IO其实可以并不用涉及太多的cpu。这篇文章里说的,其实已经很明白了,IO操作特别是直接控制方式,还是必然会涉及到CPU的。虽然IO不会占用大量的CPU时间,但是非常频繁的IO还是会非常浪费CPU时间的,所以面对大量IO的任务,有时候是需要算法来合并IO,或者通过cache来缓解IO压力的【1】...转载 2018-03-29 13:56:02 · 7564 阅读 · 0 评论 -
java多线程:线程运行时的内存模型
转载自并发编程网 – ifeve.com 本文链接地址: Java内存模型 Java内存模型规范了Java虚拟机与计算机内存是如何协同工作的。Java虚拟机是一个完整的计算机的一个模型,因此这个模型自然也包含一个内存模型——又称为Java内存模型。如果你想设计表现良好的并发程序,理解Java内存模型是非常重要的。Java内存模型规定了如何和何时可以看到由其他线程修改过后的共享变量的值,以及...转载 2018-03-29 16:20:30 · 5262 阅读 · 7 评论 -
生产者/消费者问题的多种Java实现方式
转自:https://blog.csdn.net/monkey_d_meng/article/details/6251879实质上,很多后台服务程序并发控制的基本原理都可以归纳为生产者/消费者模式,而这是恰恰是在本科操作系统课堂上老师反复讲解,而我们却视而不见不以为然的。在博文《一种面向作业流(工作流)的轻量级可复用的异步流水开发框架的设计与实现》中将介绍一种生产者/消费者模式的具体应用。...转载 2018-11-07 08:33:47 · 206 阅读 · 0 评论 -
一种面向作业流(工作流)的轻量级可复用的异步流水开发框架JobFlow的设计与实现
原文:https://blog.csdn.net/monkey_d_meng/article/details/6419246 要做这个东东的想法由来以久了的说,一个月以前动手把代码实现了下来,今天觉得如果实在不写成博文记录下来的话,不知又要推到何年何月了。嗯,废话不多说,直入正题了~ 在实际的开发过程中,我们经常会遇到这样的情况:海量的并发用户发送请求要求服务器处理,...转载 2018-11-07 08:56:02 · 1158 阅读 · 0 评论