java 并发包学习 1: ConcurrentHashMap: ConcurrentHashMap : 线程安全效率高于hashTable, jdk1.7中使用的是分段锁, 将数据分成多个hashTable,避免了多个线程竞争同一把锁,导致效率低下 在JDK1.7和JDK1.8中的区别: 在JDK ...
分类:
编程语言 时间:
2020-03-20 12:29:26
阅读次数:
71
并发是个系统的知识体系,有理论上的,有语言上的,有概念上的,这份总结力求简单,看的懂,而不是用一大堆源码和概念去描述 java的内存模型 java的内存模型被称为JMM,从上图可以看出,java内存模型主要是针对多线程。 为什么要先说java的内存模型,事实上,涉及到线程之间通信的两种模型; 第一种 ...
分类:
编程语言 时间:
2020-03-18 11:30:19
阅读次数:
62
你有一个思想,我有一个思想,我们交换后,一个人就有两个思想 If you can NOT explain it simply, you do NOT understand it well enough 现陆续将Demo代码和技术文章整理在一起 "Github实践精选" ,方便大家阅读查看,本文同样收 ...
分类:
其他好文 时间:
2020-03-17 08:11:42
阅读次数:
53
一.了解Map集合吗?Map集合都有哪些实现 HashMap 、HashTable、 LinkedHashMap 、TreeMap、 ConcurrentHashMap HashMap底层数据结构是哈希表,所以其特点是元素无序且唯一(自定义对象需要重写hashCode和equals方法保证他的唯一性 ...
分类:
其他好文 时间:
2020-03-16 16:25:48
阅读次数:
83
本文源码:GitHub·点这里||GitEE·点这里一、线程基本机制1、概念描述并发编程的特点是:可以将程序划分为多个分离且独立运行的任务,通过线程来驱动这些独立的任务执行,从而提升整体的效率。下面提供一个基础的演示案例。2、应用案例场景:假设有一个容器集合,需要拿出容器中的每个元素,进行加工处理,一般情况下直接遍历就好,如果数据偏大,可以根据线程数量对集合切割,每个线程处理一部分数据,这样处理时
分类:
编程语言 时间:
2020-03-16 09:59:26
阅读次数:
57
java并发中ExecutorService的使用 ExecutorService是java中的一个异步执行的框架,通过使用ExecutorService可以方便的创建多线程执行环境。 本文将会详细的讲解ExecutorService的具体使用。 创建ExecutorService 通常来说有两种方 ...
分类:
编程语言 时间:
2020-03-10 14:09:30
阅读次数:
50
1、什么是进程和线程 1.1 进程是程序运行资源分配的最小单位 进程是操作系统进行资源分配的最小单位,其中资源包括:CPU、内存空间、磁盘IO等,同一进程中的多个线程共享该进程中的全部系统资源,而进程和进程之间是相互独立的。进程是具有一定独立功能的程序关于某个数据集合上的一次运行活动,进程是系统进行 ...
分类:
编程语言 时间:
2020-03-07 20:53:25
阅读次数:
78
ExecutorService让我们可以优雅地在程序中使用线程池来创建和管理线程,而且性能佳、开销小,还可以有效地控制最大并发线程数,是我们在java并发编程中会经常使用到的。
每一个线程都会占用系统资源,因此线程池的关闭与清理同样重要,本文介绍我们如何优雅地关闭线程池。
分类:
编程语言 时间:
2020-03-07 18:57:21
阅读次数:
178
本文源码:GitHub·点这里||GitEE·点这里一、并发编程简介1、基础概念程序与计算机系统操作有关的计算机程序、规程、规则,以及可能有的文件、文档及数据。进程进程是计算机中的程序,关于某数据集合上的一次运行活动,是系统进行资源分配和调度的基本单位,是操作系统结构的基础。在早期面向进程设计的计算机结构中,进程是程序的基本执行实体;在面向线程设计的计算机结构中,进程是线程的容器。程序是指令、数据
分类:
编程语言 时间:
2020-03-04 22:42:24
阅读次数:
58
本文源码: "GitHub·点这里" || "GitEE·点这里" 一、并发编程简介 1、基础概念 程序 与计算机系统操作有关的计算机程序、规程、规则,以及可能有的文件、文档及数据。 进程 进程是计算机中的程序,关于某数据集合上的一次运行活动,是系统进行资源分配和调度的基本单位,是操作系统结构的基础 ...
分类:
编程语言 时间:
2020-03-04 20:54:06
阅读次数:
73