Mybatis 的连接池技术 在 Mybatis 的 SqlMapConfig.xml 配置文件中,通过<dataSource type=”pooled”>来实现 Mybatis 中连接池的配置。 1.1 Mybatis 连接池的分类 在 Mybatis 中我们将它的数据源 dataSource 分 ...
分类:
其他好文 时间:
2020-05-11 15:09:56
阅读次数:
63
以下出现代码均为伪代码; 2.5.1 生产者 消费者问题(考试模型占比 60%) 分析上图:缓冲区存在互斥问题,生产者与消费者之间还 存在同步问题 1. 利用 记录型信号量 解决生产者 消费者问题(==背下来==) 假定在生产者和消费者之间的共用缓冲池中具有n个缓冲区,这时可以利用互斥信号量mute ...
分类:
系统相关 时间:
2020-05-11 00:57:40
阅读次数:
88
1.大纲 线程池介绍 创建与停止线程池 常见的线程池特点与用法 任务太多,怎么拒绝 钩子方法 实现原理,源码分析 使用线程池的主要点 一:介绍 1.重要性 使用中重要 面试中重要 2.池 线程可以复用 可以控制资源的总量 3.不使用线程池些的程序 这里有两个程序,只粘贴进行循环对每个任务进行创建线程 ...
分类:
编程语言 时间:
2020-05-11 00:52:33
阅读次数:
58
在《阿里巴巴java开发手册》中指出了线程资源必须通过线程池提供,不允许在应用中自行显示的创建线程,这样一方面是线程的创建更加规范,可以合理控制开辟线程的数量;另一方面线程的细节管理交给线程池处理,优化了资源的开销。而线程池不允许使用Executors去创建,而要通过ThreadPoolExecut ...
分类:
编程语言 时间:
2020-05-10 21:08:38
阅读次数:
63
一、继承Thread类,重写run方法,实现创建一个线程 package com.wuhao.thread; import java.util.Date; /** * 自定义线程 */ public class MyThread extends Thread{ public void run() { ...
分类:
编程语言 时间:
2020-05-10 10:51:33
阅读次数:
63
线程池中,常见有涉及到的: ExecutorService executorService = Executors.newSingleThreadExecutor(); ExecutorService executorService1 = Executors.newCachedThreadPool( ...
分类:
编程语言 时间:
2020-05-09 23:26:48
阅读次数:
94
当系统中存在大量相同或相似的对象时,享元模式是一种较好的解决方案,它通过共享技术实现相同或相似的细粒度对象的复用,从而节约内存空间。享元模式提供了一个享元池用于存储已经创建好的享元对象,并通过享元工厂类将享元对象提供给客户端使用。 模式动机 使用面向对象技术开发时,很多情况下需要在系统中增加类和对象 ...
分类:
其他好文 时间:
2020-05-09 19:16:32
阅读次数:
63
2.3 字符串常量池和String::intern()的讨论 2.3.1 Java堆中的内存泄漏与内存溢出 1、内存泄漏指垃圾收集器无法回收,导致该部分内存没办法得到利用,泄漏了,占用内存。 2、内存溢出就是指Java堆中创建的对象所占用的内存大小,已经超过了Java堆可扩展内存的最大范围,导致内存 ...
分类:
其他好文 时间:
2020-05-09 17:25:45
阅读次数:
70
2.2 HotSpot虚拟机中的对象 2.2.1 对象的创建 注意:这里所指的对象限于普通Java对象,不包括数组和Class对象等 当Java虚拟机遇到一条new的字节码指令时,会触发对象创建。 总结1 HotSpot中的对象创建过程: (1)首先将去检查这个指令的参数是否能在常量池( Java方 ...
分类:
其他好文 时间:
2020-05-09 16:43:18
阅读次数:
66
什么是连接池 通常情况下, 当我们需要做redis操作时, 会创建一个连接, 并基于这个连接进行redis操作, 操作完成后, 释放连接, 一般情况下, 这是没问题的, 但当并发量比较高的时候, 频繁的连接创建和释放对性能会有较高的影响 于是, 连接池就发挥作用了 连接池的原理是, 通过预先创建多个 ...
分类:
编程语言 时间:
2020-05-09 13:05:09
阅读次数:
89