前言 前两天负责的系统,因为需要获取用户的昵称并进行入库,但是有个别用户的昵称中存在emoji表情,导致入库时报错。 报错内容:java.sql.SQLException: ...
前言 前两天负责的系统,因为需要获取用户的昵称并进行入库,但是有个别用户的昵称中存在emoji表情,导致入库时报错。 报错内容:java.sql.SQLException: ...
为更好的适应JAVA技术的发展,使用更先进及前沿的技术。所以推出将我们现在使用的JDK1.6(1.7)及tomcat6(7)升级至JDK1.8及tomcat8,使我们的系统获...
今天公司同事上线时发现,有的机器打印了日志,而有的机器则一条日志也没有打。以往都是没有问题的。 因此猜测是这次开发间接引入新的日志jar包,日志冲突导致未打印。 排查代码发现...
系统性能优化的几种常用手段是异步和缓存。因此我们常常使用线程池异步处理一些业务。线程池的使用还是相对比较简单的,首先创建一个线程池,然后通过execute或submit执行任...
下图为线程池的构造方法,我们可以自定义一些功能实现项目优化 1、预先启动核心线程 this.prestartAllCoreThreads();使用方式:自定义线程池的构造方法...
线程池中的队列要求的是阻塞队列,作用主要是当线程池处理任务能力不足时,队列存储多余的任务,从而起到削峰和缓冲的目的。 可以选择的队列种类很多,如何选择合适的队列应用到自己的线...
我们知道线程池通过execute方法执行提交的Runnable任务,但Runnable只是执行任务,没有返回任何信息。 【线程池原理:线程池原来是个外包公司,打工人我悟了[h...
我们在工作中经常用到线程池,线程池(Thread Pool)是一种基于池化思想管理线程的工具。 线程的作用是处理任务,而池则是帮助我们实现资源的重复利用和管理。线程池就是帮助...
来源公众号:于日拱一兵作者:tan日拱一兵 你有一个思想,我有一个思想,我们交换后,一个人就有两个思想If you can NOT explain it simply, yo...
一、需求起因 高并发业务场景,数据库通常都是用户并发访问最薄弱的环节。所以,就需要使用 Redis 做一个缓冲操作,让请求先访问到 Redis,而不是直接访问 MySQL 等...
本文准备从以下几个方面去讲解HashMap:1)HashMap源码详细分析2)HashMap为什么是线程不安全的?3)HashMap和HashTable的区别4)1.7和1....
这次主要是分析下HashMap的工作原理,为什么我会拿这个东西出来分析,原因很简单,以前我面试的时候,偶尔问起HashMap,99%的程序员都知道HashMap,基本都会用H...
占小狼 转载请注明原创出处,谢谢! 问题 最近的几次面试中,我都问了是否了解HashMap在并发使用时可能发生死循环,导致cpu100%,结果让我很意外,都表示不知道有这样的...
本文准备从以下几个方面去讲解JVM:1)JVM内存结构解析2)JVM的类加载机制剖析3)GC垃圾回收机制 JVM内存结构解析 一张图可以看出jvm的内存结构 java代码片段...
对于批量操作,若是我们使用for循环串行操作,那么可能会导致接口超时。若我们使用并发执行,首先遇到的问题便是不知道最后一个线程什么时候回执行完毕。 1. countDownL...
什么是并发编程 什么是并发编程 并发历史: 早期计算机--从头到尾执行一个程序,资源浪费 操作系统出现--计算机能运行多个程序,不同的程序在不同的单独的进程中运行 一个进程...
一. JAVA 并发知识库 二. JAVA 线程实现/创建方式 1. 继承 Thread 类 Thread 类本质上是实现了 Runnable 接口的一个实例,代表一个线程的...