上一页 1 ··· 7 8 9 10 11 12 13 14 15 ··· 24 下一页
摘要: web.xml文件是Java Web项目中的一个配置文件,主要用于配置欢迎页、Filter、Listener、Servlet等,但并不是必须的,一个Java Web项目没有web.xml文件也是照样能跑起来的。 1. web.xml各版本区别 首先来看一下Tomcat官网的Servlet和JSP规范 阅读全文
posted @ 2019-05-23 22:13 kosamino 阅读(6755) 评论(0) 推荐(0) 编辑
摘要: 1、简介 Redis 是一个开源(BSD许可)的,内存中的数据结构存储系统,它可以用作数据库、缓存和消息中间件。 它支持多种类型的数据结构,如 字符串(strings), 散列(hashes), 列表(lists), 集合(sets), 有序集合(sorted sets) 与范围查询, bitmap 阅读全文
posted @ 2019-05-10 01:36 kosamino 阅读(11167) 评论(0) 推荐(0) 编辑
摘要: 1 JVM 简单结构图 1.1 类加载子系统与方法区 类加载子系统负责从文件系统或者网络中加载 Class 信息,加载的类信息存放于一块称 为方法区的内存空间。除了类的信息外,方法区中可能还会存放运行时常量池信息,包括字符串字面量和数字常量(这部分常量信息是 Class 文件中常量池部分的内存映射) 阅读全文
posted @ 2019-05-07 23:51 kosamino 阅读(601) 评论(0) 推荐(0) 编辑
摘要: 一、抛出问题 关于如何计算并发线程数,一般分两派,来自两本书,且都是好书,到底哪个是对的?问题追踪后,整理如下: 第一派:《Java Concurrency in Practice》即《java并发编程实践》,如下图: 如上图,在《Java Concurrency in Practice》一书中,给 阅读全文
posted @ 2019-05-06 02:00 kosamino 阅读(450) 评论(0) 推荐(0) 编辑
摘要: 1、Executor 线程池顶级接口。定义方法,void execute(Runnable)。方法是用于处理任务的一个服务方法。调用者提供Runnable 接口的实现,线程池通过线程执行这个 Runnable。服务方法无返回值的。是 Runnable 接口中的 run 方法无返回值。 常用方法 -v 阅读全文
posted @ 2019-05-06 01:54 kosamino 阅读(1375) 评论(0) 推荐(0) 编辑
摘要: 1、创建软链接 具体用法是:ln -s [源文件] [软链接文件]。 -s 是代号(symbolic)的意思。这里有两点要注意: 第一,ln命令会保持每一处链接文件的同步性,也就是说,不论你改动了哪一处,其它的文件都会发生相同的变化; 第二,ln的链接又软链接 和硬链接两种,软链接就是ln -s * 阅读全文
posted @ 2019-04-30 17:19 kosamino 阅读(33572) 评论(0) 推荐(1) 编辑
摘要: 题目: 启动若干线程,并行访问同一个容器中的数据。保证获取容器中数据时没有数据错误,且线程安全。如:售票,秒杀等业务。 import java.util.ArrayList; import java.util.List; public class Test_01 { static List list = new ArrayList(); // static List list... 阅读全文
posted @ 2019-04-23 00:40 kosamino 阅读(165) 评论(0) 推荐(0) 编辑
摘要: 解决并发情况下的容器线程安全问题的。给多线程环境准备一个线程安全的容器对象。 线程安全的容器对象: Vector, Hashtable。线程安全容器对象,都是使用 synchronized 方法实现的。 concurrent 包中的同步容器,大多数是使用系统底层技术实现的线程安全。类似 native 阅读全文
posted @ 2019-04-19 01:22 kosamino 阅读(840) 评论(0) 推荐(0) 编辑
摘要: 一、HashMap简介 HashMap是基于哈希表实现的,每一个元素是一个key-value对,其内部通过单链表解决冲突问题,容量不足(超过了阀值)时,同样会自动增长。 HashMap是非线程安全的,只是用于单线程环境下,多线程环境下可以采用concurrent并发包下的concurrentHash 阅读全文
posted @ 2019-04-18 11:29 kosamino 阅读(374) 评论(0) 推荐(0) 编辑
摘要: HashTable 底层数组+链表实现,无论key还是value都不能为null,线程安全,实现线程安全的方式是在修改数据时锁住整个HashTable,效率低,ConcurrentHashMap做了相关优化 初始size为11,扩容:newsize = olesize*2+1 计算index的方法: 阅读全文
posted @ 2019-04-17 20:58 kosamino 阅读(443) 评论(0) 推荐(0) 编辑
摘要: 目录大纲: 一.对ThreadLocal的理解 二.深入解析ThreadLocal类 三.ThreadLocal的应用场景 四.ThreadLocal对象的回收 一.对ThreadLocal的理解 ThreadLocal,很多地方叫做线程本地变量,也有些地方叫做线程本地存储,其实意思差不多。Thre 阅读全文
posted @ 2019-04-17 09:28 kosamino 阅读(281) 评论(0) 推荐(0) 编辑
摘要: 1、synchronized 关键字 synchronized 锁什么?锁对象。 可能锁对象包括: this, 临界资源对象,Class 类对象。 1.1 同步方法 synchronized T methodName(){} 同步方法锁定的是当前对象。当多线程通过同一个对象引用多次调用当前同步方法时 阅读全文
posted @ 2019-04-16 01:31 kosamino 阅读(842) 评论(0) 推荐(0) 编辑
摘要: 题目(生产者消费者模式):自定义同步容器,容器容量上限为10。可以在多线程中应用,并保证数据线程安全。 方式一:synchronized 方法二:ReentrantLock 区别:synchronized的notify会唤醒所有的线程(生产者+消费者),而ReentrantLock的Conditio 阅读全文
posted @ 2019-04-16 00:58 kosamino 阅读(258) 评论(0) 推荐(0) 编辑
摘要: 1、ReentrantLock锁 结果: 2、ReentrantLock尝试锁 结果: 3、ReentrantLock可打断锁 结果: 4、ReentrantLock公平锁 结果(ReentrantLock两种都与可能,但是TestSync只可能出现后一种): 阅读全文
posted @ 2019-04-16 00:29 kosamino 阅读(544) 评论(0) 推荐(0) 编辑
摘要: 时序图(Sequence Diagram)是显示对象之间交互的图,这些对象是按时间顺序排列的。顺序图中显示的是参与交互的对象及其对象之间消息交互的顺序。时序图中包括的建模元素主要有:角色(Actor)、对象(Actor)、生命线(Lifeline)、控制焦点(Activation)、消息(Messa 阅读全文
posted @ 2019-04-11 00:03 kosamino 阅读(8442) 评论(0) 推荐(1) 编辑
上一页 1 ··· 7 8 9 10 11 12 13 14 15 ··· 24 下一页