标签:ThreadPoolExecutor

Java

RocketMQ 快速上手

刘莉莉 发布于 2019-04-26

本快速上手手册,指的是在本地计算机上设置RocketMQ消息传递系统从发送和接收消息的详细说明. 必要环境 64位的操作系统 64位的JDK1.8+ 以上 Maven 3.2.x 以上 Git 4G以上的存储空间用于代理实例 下载和构建发布版 在这里可以下载 4.4.0 正式版的...

阅读(11)评论(0)赞 (0)

Java

聊聊elasticsearch的MembershipAction

xiaoli.wang 发布于 2019-04-25

序 本文主要研究一下elasticsearch的MembershipAction MembershipAction elasticsearch-6.7.1/server/src/main/java/org/elasticsearch/discovery/zen/Membershi...

阅读(14)评论(0)赞 (0)

Java

【开发小记】 Java 线程池 之 被“吃掉”的线程异常(附源码分析和解决方法)

1

yanxinchi 发布于 2019-04-24

前言 今天遇到了一个bug,现象是,一个任务放入线程池中,似乎“没有被执行”,日志也没有打。 经过本地代码调试之后,发现在任务逻辑的前半段,抛出了 NPE ,但是代码外层没有 try-catch ,导致这个异常被吃掉。 这个问题解决起来是很简单的,外层加个 try-catch 就...

阅读(16)评论(0)赞 (0)

Java

Java多线程之Executor框架和手写简易的线程池

1

xiaoli.wang 发布于 2019-04-24

线程池 什么是线程池 线程池一种线程使用模式,线程池会维护多个线程,等待着分配可并发执行的任务,当有任务需要线程执行时,从线程池中分配线程给该任务而不用主动的创建线程。 线程池的好处 如果在我们平时如果需要用到线程时,我们一般是这样做的:创建线程(T1),使用创建的线程来执行任务...

阅读(11)评论(0)赞 (0)

Java

搞懂Runnable Callable Future FutureTask 及应用

yanxinchi 发布于 2019-04-20

一般创建线程只有两种方式,一种是继承Thread,一种是实现Runnable接口。但是这两种创建方式有一个致命的缺点就是没有返回值,没返回值就让人很苦恼了啊。得用共享变量或者其他通信方式才能得到线程处理完的结果,就有点麻烦。 还有一般不提倡使用继承Thread来创建线程方式,因为...

阅读(14)评论(0)赞 (0)

Java

面试官:说说Java线程池

3

Harries 发布于 2019-04-19

身为程序员我们对线程是再熟悉不过了,多线程并发算是Java进阶的知识,用好多线程不容易有太多的坑。创建线程也算是一个"重"操作。创建线程的语句是 new Thread() 咋一看好像就是new了一个对象。 没错是new了个对象,但是不仅仅是普通对象那样在堆中分...

阅读(25)评论(0)赞 (0)

Java

Android的Java多线程部简介和Synchronized学习总结

尖兵 发布于 2019-04-18

new Thread() //或者 new Thread(new Runnable()) 复制代码 之后用start()来启动线程。跟代码会发现start()会执行start0()这个native方法,虚拟机调用run方法。有Runnable就会调用传入的runnable的run...

阅读(16)评论(0)赞 (0)

Spring

SpringBoot踩坑日记-定时任务不定时了?

Harries 发布于 2019-04-15

springboot定时任务用起来大家应该都会用,加两注解,加点配置就可以运行。但是如果仅仅处在应用层面的话,有很多内在的问题开发中可能难以察觉。话不多说,我先用一种 极度夸张 的手法,描述一下遇到的一个问题。 @Component public class ScheduleTe...

阅读(21)评论(0)赞 (0)

Java

多线程中那些看不见的陷阱

1

zhuangli 发布于 2019-04-09

多线程编程就像一个沼泽,中间遍布各种各样的陷阱。大多数开发者绝大部分时间都是在做上层应用的开发,并不需要过多地涉入底层细节。但是在多线程编程或者说是并发编程中,有非常多的陷阱被埋在底层细节当中。如果不知道这些底层知识,可能在编写过程中完全意识不到程序已经出现了漏洞,甚至在漏洞爆发...

阅读(37)评论(0)赞 (0)

Java

Core Java 52 问(含答案)

1

darida 发布于 2019-04-08

上篇文章 4.9k Star 安卓面试知识点,请收下! 翻译了 Mindorks 的一份超强面试题,今天带来的是其中 Core Java 部分 52 道题目的答案。题目的质量还是比较高的,基本涵盖了 Java 基础知识点,面向对象、集合、基本数据类型、并发、Java 内存模型、G...

阅读(40)评论(0)赞 (0)

Java

Dubbo源码解析之服务调用过程

1

yeseng 发布于 2019-04-08

简介 在前面的文章中,我们分析了 Dubbo SPI、服务导出与引入、以及集群容错方面的代码。经过前文的铺垫,本篇文章我们终于可以分析服务调用过程了。Dubbo 服务调用过程比较复杂,包含众多步骤,比如发送请求、编解码、服务降级、过滤器链处理、序列化、线程派发以及响应请求等步骤。...

阅读(28)评论(0)赞 (0)

Java

第7项:清除过期对象的引用

1

xiaoli.wang 发布于 2019-04-06

当你从手工管理内存的语言(比如C或者C++)转换到具有垃圾回收功能的语言的时候,程序猿的工作就会变得更加容易,因为当你用完了对象之后,他们就会被自动回收。当你第一次经历对象回收功能的时候,会觉得这简直有点不可思议。这很容易给你留下这样的印象,认为自己不再需要考虑内存管理的事情了,...

阅读(27)评论(0)赞 (0)

Java

Half-sync/Half-async模式 下

darida 发布于 2019-04-05

什么网站都能找得到 评价与实现考量 1.既发挥了异步编程的优势——增加系统的并发性,减少不必要的等待,又保持了同步编程的简单性。 通过把低级任务或者耗时较短的任务安排在异步层,减少了客户端的等待,有利于提升系统的吞吐率。 高级任务或耗时较长的任务被安排在同步层,这使得可以在不影响...

阅读(41)评论(0)赞 (0)

Spring

如何在生产环境中通过Restful API的方式请求重启Spring Boot应用?

4

changyuan.xu 发布于 2019-04-04

在一个很奇葩的需求下,要求在客户端动态修改Spring Boot配置文件中的属性,例如端口号、应用名称、数据库连接信息等,然后通过一个Http请求重启Spring Boot程序。这个需求类似于操作系统更新配置后需要进行重启系统才能生效的应用场景。 动态配置系统并更新生效是应用的一...

阅读(73)评论(0)赞 (0)

Java

Java并发 之 线程池系列 (2) 使用ThreadPoolExecutor构造线程池

3

刘莉莉 发布于 2019-04-01

Executors的“罪与罚” 在上一篇文章 Java并发 之 线程池系列 (1) 让多线程不再坑爹的线程池 中,我们介绍了使用JDK concurrent包下的工厂和工具类 Executors 来创建线程池常用的几种方法: //创建固定线程数量的线程池 ExecutorServ...

阅读(25)评论(0)赞 (0)

Java

品阿里 Java 开发手册有感

3

changyuan.xu 发布于 2019-04-01

号外:为读者持续整理了几份最新教程,覆盖了 Spring Boot、Spring Cloud、微服务架构等PDF。 获取方式:关注右侧公众号"泥瓦匠BYSocket",来领取吧! 摘要: 原创出处 https://www.bysocket.com 「公众号:泥...

阅读(34)评论(0)赞 (0)

Java

聊聊jvm的Stack Memory

尖兵 发布于 2019-04-01

序 本文主要研究一下jvm的Stack Memory Virtual Machine Stack 每个jvm线程都有一个私有的Virtual Machine Stack,它在线程同时被创建 该stack主要用于存储frames,即所谓的stack frames 每个方法在执行的时...

阅读(25)评论(0)赞 (0)

Java

Java线程池实现原理与技术,看这一篇就够了

2

puefu.he 发布于 2019-04-01

01.无限制线程的缺点 多线程的软件设计方法确实可以最大限度地发挥多核处理器的计算能力,提高生产系统的吞吐量和性能。但是,若不加控制和管理的随意使用线程,对系统的性能反而会产生不利的影响。 一种最为简单的线程创建和回收的方法类似如下: new Thread(new&nb...

阅读(36)评论(0)赞 (0)