随笔分类 -  线程

摘要:谈到线程池,只需要记住这三个词:三大方法,七大参数,四种拒绝策略轻松搞定! 1、线程池 在Java中,创建和销毁线程是非常费时的,可能加起来的运行时间可能远大于方法实行的时间,为了提高程序效率,我们需要尽可能的降低线程的创建和销毁!此时就会使用线程池这种池化技术! 2、三大方法(创建线程池的方法) 阅读全文
posted @ 2021-04-15 16:18 皇问天 阅读(184) 评论(0) 推荐(0) 编辑
摘要:1)Java 中能创建 Volatile 数组吗? 能,Java 中可以创建 volatile 类型数组,不过只是一个指向数组的引用,而不是整个数组。我的意思是,如果改变引用指向的数组,将会受到 volatile 的保护,但是如果多个线程同时改变数组的元素,volatile 标示符就不能起到之前的保 阅读全文
posted @ 2018-06-11 00:14 皇问天 阅读(180) 评论(0) 推荐(0) 编辑
摘要:操作线程的常用方法大体上有sleep(),join(),yield()(让位),wait(),notify(),notifyAll(),关键字synchronized等等。 由于这些方法功能有些相似,所以有时候会混乱,我们就需要了解它们的具体的原理,以及通过自己写的具体的例子去巩固,加深印象 sle 阅读全文
posted @ 2018-06-11 00:03 皇问天 阅读(242) 评论(0) 推荐(0) 编辑
摘要:1.配置 ThreadPoolTaskExecutor bean /** * This file created at 2018年4月13日 下午3:06:57. * * Copyright (c) 2004-2014 AVTrace, Inc. All rights reserved. */pac 阅读全文
posted @ 2018-04-13 16:24 皇问天 阅读(2351) 评论(0) 推荐(0) 编辑
摘要:简介信号量(Semaphore),有时被称为信号灯,是在多线程环境下使用的一种设施, 它负责协调各个线程, 以保证它们能够正确、合理的使用公共资源。 概念Semaphore分为单值和多值两种,前者只能被一个线程获得,后者可以被若干个线程获得。 以一个停车场运作为例。为了简单起见,假设停车场只有三个车 阅读全文
posted @ 2017-08-15 10:19 皇问天 阅读(161) 评论(0) 推荐(0) 编辑
摘要:有大小的队列就叫有界队列 如 ArrayBlockingquue, 反之是无界队列 如 LinkedBlockingDeque。 单词写错了。 是的,LinkedBlockingDeque 永远满不了了,但内存用完了,程序就崩了。 一、双向队列Deque Queue除了前面介绍的实现外,还有一种双向 阅读全文
posted @ 2017-08-02 17:19 皇问天 阅读(593) 评论(0) 推荐(0) 编辑
摘要:在面向对象编程中,对象创建和销毁是很费时间的,因为创建一个对象要获取内存资源或者其它更多资源。在Java中更是如此,虚拟机将试图跟踪每一个对象,以便能够在对象销毁后进行垃圾回收。所以提高服务程序效率的一个手段就是尽可能减少创建和销毁对象的次数,特别是对一些很耗资源的对象创建和销毁。如何利用已有对象来 阅读全文
posted @ 2017-06-21 23:13 皇问天 阅读(280) 评论(0) 推荐(0) 编辑
摘要:1、线程池简介: 多线程技术主要解决处理器单元内多个线程执行的问题,它可以显著减少处理器单元的闲置时间,增加处理器单元的吞吐能力。 假设一个服务器完成一项任务所需时间为:T1 创建线程时间,T2 在线程中执行任务的时间,T3 销毁线程时间。 如果:T1 + T3 远大于 T2,则可以采用线程池,以提 阅读全文
posted @ 2017-04-24 11:28 皇问天 阅读(265) 评论(0) 推荐(0) 编辑

点击右上角即可分享
微信分享提示