![](https://img-blog.csdnimg.cn/20201014180756928.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
多线程
codesWang
过去的我,今天的我,明天的我,未来的我。
展开
-
多线程学习之快速入门
介绍:多线程(英语:multithreading),是指从软件或者硬件上实现多个线程并发行的技术。具有多线程能力的计算机因有硬件支持而能够在同一时间执行多于一个线程,进而提升整体处理性能。具有这种能力的系统包括对称多处理机、多核心处理器以及芯片级多处理(Chip-level multithreading)或同时多线程(Simultaneous multithreading)处理器。 在一个程序中,...原创 2018-03-03 08:57:02 · 264 阅读 · 0 评论 -
多线程学习二之线程之间实现同步
上篇博客回顾:1.线程与进程区别:进程是所有线程的集合,线程是进程中的一条执行路径2.为什么要使用多线程:提高程序效率3.多线程应用场景:提高程序运行效率,比如迅雷 分批处理数据4.多线程创建方式:三种创建方式 继承Thread 、实现Runnable接口、匿名内部类5.获取线程对象以及名称:查看Api6.线程运行状态:新建状态、运行状态、就绪状态、阻塞状态、死亡状态这篇博客记录线程之间实现同步学...原创 2018-03-03 17:55:02 · 324 阅读 · 0 评论 -
多线程学习三之线程通讯
上篇博客回顾:1.什么是多线程安全 当多个线程同时共享,同一个全局变量或静态变量,做写的操作时,可能会发生数据冲突问题,也就是线程安全问题。做读操作是不会发生数据冲突问题。2.synchronized用法 2.1、在可能发生线程安全问题的代码用synchronized(同一个锁数据){包括起来}2.2、在方法上修饰synchronized称为同步函数2.3、在方法上加上static关键字,使用s...原创 2018-03-05 16:24:16 · 205 阅读 · 0 评论 -
多线程学习之深入理解Java多线程与并发编程
上篇博客回顾:1.多线程之间如何通讯 多个线程在操作同一个资源,但是操作的动作不同。2.wait、notify、notifyAll()方法wait()、notify、notifyAll()定义在Object类中方法,可以用来控制线程的状态这三个方法最终调用的都是jvm级的native方法。随着jvm运行平台的不同可能有些许差异。 2.1.如果对象调用了wait方法就会使持有该对象的线程把该对象的控...原创 2018-03-06 16:37:37 · 1871 阅读 · 0 评论 -
线程池原理分析
使用线程池目的在开发过程中,合理地使用线程池能够带来3个好处。1.降低资源消耗。通过重复利用已创建的线程降低线程创建和销毁造成的消耗。2.提高响应速度。当任务到达时,任务可以不需要等到线程创建就能立即执行。3.提高线程的可管理性。线程是稀缺资源,如果无限制地创建,不仅会消耗系统资源,还会降低系统的稳定性,使用线程池可以进行统一分配、调优和监控。但是,要做到合理利用线程池作用线程池...原创 2018-09-28 15:21:37 · 164 阅读 · 0 评论 -
JAVA中callable和 future
1. Callable与Runable区别当我们使用多线程做相应操作时 想要知道线程是否执行完毕。在使用实现Runnable接口或者继承Thread两种方式时都有个缺点 那就是在任务执行完成之后无法获取返回结果 。如果想知道线程是否执行完毕方法有很多种 这篇文章主要记录callable和 future。从JAVA SE 5.0开始引入了Callable和Future,通过它们构建的线程,在任务...原创 2018-10-24 16:15:16 · 1474 阅读 · 0 评论 -
初识Disruptor并发框架
一、什么是DisruptorMartin Fowler在自己网站上写了一篇LMAX架构的文章,在文章中他介绍了LMAX是一种新型零售金融交易平台,它能够以很低的延迟产生大量交易。这个系统是建立在JVM平台上,其核心是一个业务逻辑处理器,它能够在一个线程里每秒处理6百万订单。业务逻辑处理器完全是运行在内存中,使`用事件源驱动方式。业务逻辑处理器的核心是Disruptor。Disruptor它是一...原创 2019-06-11 12:43:07 · 222 阅读 · 0 评论