java 四种线程池的使用

介绍new Thread的弊端及Java四种线程池的使用 1,线程池的作用 线程池作用就是限制系统中执行线程的数量。 根据系统的环境情况,可以自动或手动设置线程数量,达到运行的最佳效果。  少了浪费了系统资源,多了造成系统拥挤效率不高。  用线程池控制线程数量,其他线程排 队等候。 一个任务...

2018-12-02 12:58:32

阅读数:98

评论数:0

ThreadPoolExecutor策略配置以及应用场景

ThreadPoolExecutor 是用来处理异步任务的一个接口,可以将其理解成为一个线程池和一个任务队列,提交到 ExecutorService 对象的任务会被放入任务队或者直接被线程池中的线程执行。ThreadPoolExecutor 支持通过调整构造参数来配置不同的处理策略,本文主要介绍常...

2018-12-02 12:53:24

阅读数:47

评论数:0

Java并发编程:线程池的使用

                                                          Java并发编程:线程池的使用   在前面的文章中,我们使用线程的时候就去创建一个线程,这样实现起来非常简便,但是就会有一个问题:   如果并发的线程数量很多,并且每个线程都是执...

2018-12-02 09:48:58

阅读数:73

评论数:0

volatile的使用及其原理

1、 volatile的作用 相比Sychronized(重量级锁,对系统性能影响较大),volatile提供了另一种解决可见性和有序性问题的方案。对于原子性,需要强调一点,也是大家容易误解的一点:对volatile变量的单次读/写操作可以保证原子性的,如long和double类型变量,但是并不...

2018-11-21 11:29:33

阅读数:31

评论数:0

Java中Volatile关键字详解

Java中Volatile关键字详解 博文地址:http://www.cnblogs.com/zhengbin/p/5654805.html

2018-11-21 11:25:26

阅读数:20

评论数:0

Java并发编程:volatile关键字解析

Java并发编程:volatile关键字解析 博文地址:https://www.cnblogs.com/dolphin0520/p/3920373.html

2018-11-21 11:20:45

阅读数:19

评论数:0

彻底搞定欢乐锁与悲观锁

本文并未全部原创,感觉网络上的知识比较混乱,故自己整理了一下。 乐观并发控制(乐观锁)和悲观并发控制(悲观锁)是并发控制采用的技术手段,是由人们定义出来的概念。可以认为是一种思想。 针对不同的业务情景,应该选用不同的并发控制方式。所以,不要把乐观锁和悲观锁狭义的理解为DBMS(数据库管理)中的...

2018-11-21 11:07:40

阅读数:46

评论数:0

最通俗易懂的乐观锁与悲观锁原理及实现

一、乐观锁   总是认为不会产生并发问题,每次去取数据的时候总认为不会有其他线程对数据进行修改,因此不会上锁,但是在更新时会判断其他线程在这之前有没有对数据进行修改,一般会使用版本号机制或CAS操作实现。  version方式:一般是在数据表中加上一个数据版本号version字段,表示数据被修...

2018-11-21 10:53:47

阅读数:22

评论数:0

map遍历的四种方式

import java.util.HashMap; import java.util.Iterator; import java.util.Map; public class TestMap {     public static void main(String[] args) {      ...

2018-11-14 11:38:19

阅读数:46

评论数:0

Java解析xml文档

目录结构: 代码内容: 1、test.xml文档 <?xml version="1.0" encoding="UTF-8"?> <HD&a...

2018-10-23 19:57:59

阅读数:45

评论数:0

关于Java的File.separator

比如说要在temp目录下建立一个test.txt文件,在Windows下应该这么写: File file1 = new File ("C:\tmp\test.txt"); 在Linux下则是这样的: File file2 = new File (&quo...

2018-09-27 05:21:52

阅读数:68

评论数:0

什么是Java序列化?如何实现序列化?

一、什么是序列化: 序列化理解成“打碎”是可以的,不过在书本上的名词就是将对象转换成二进制。     二、在java中如何实现序列化: 首先我们要把准备要序列化类,实现 Serializabel接口 例如:我们要Person类里的name和age都序列化 1 2 3 ...

2018-09-27 05:18:07

阅读数:81

评论数:0

什么是Java序列化,如何实现java序列化

简要解释:   序列化就是一种用来处理对象流的机制,所谓对象流也就是将对象的内容进行流化。可以对流化后的对象进行读写操作,也可将流化后的对象传输于网络之间。   序列化是为了解决在对对象流进行读写操作时所引发的问题。序列化的实现:将需要被序列化的类实现Serializable接口,该接口没有需要实...

2018-09-27 05:13:11

阅读数:47

评论数:0

同一个电脑安装两个jdk版本

同一个电脑安装两个jdk版本 场景:公司项目使用的jdk为1.7,最近不是很忙,学习scala。该系统使用到了jdk1.8的特性,所以I need 俩版本,开整!!!1 . 准备两个版本的jdk我的两个jdk路径为: D:\jdk1.7.0_80 D:\Program Files\Java\j...

2018-09-13 00:09:29

阅读数:58

评论数:0

万能java字符串编码转换工具类

package com.zuidaima.util; import java.io.UnsupportedEncodingException; /** * 转换字符串的编码 */ public class ChangeCharset { /** 7位ASCII字符,也叫作ISO64...

2018-08-09 17:10:35

阅读数:206

评论数:0

Java 正确的做字符串编码转换

Java 正确的做字符串编码转换 字符串的内部表示? 字符串在java中统一用unicode表示( 即utf-16 LE)  对于 String s = "你好哦!"; 如果源码文件是GBK编码, 操作系统(windows)默认的环境编码为GBK,那么编译时...

2018-08-09 16:57:22

阅读数:59

评论数:0

Java 的 ArrayList 的底层数据结构

1. 数据结构--ArrayList源码摘要 ublic class ArrayList<E> extends AbstractList<E> implements List&amp...

2018-08-08 22:13:45

阅读数:100

评论数:0

【数据结构】ArrayList原理及实现

一、ArrayList介绍 ArrayList是一种线性数据结构,它的底层是用数组实现的,相当于动态数组。与Java中的数组相比,它的容量能动态增长。类似于C语言中的动态申请内存,动态增长内存。  当创建一个数组的时候,就必须确定它的大小,系统会在内存中开辟一块连续的空间,用来保存数组,因此数组...

2018-08-08 21:55:00

阅读数:71

评论数:0

JRE 和 JDK 的区别详解

JRE 和 JDK 的区别是什么? 下面我从 JRE,JDK 的功能区别和安装说明两个方面说明两者的不同之处。 一句话概述:JDK是 Java 的开发工具,它不仅提供了 Java 程序运行所需的 JRE,还提供了一系列的编译,运行等工具,如 javac,java,javaw 等。JRE只是 ...

2018-08-06 20:16:46

阅读数:46

评论数:0

java中String类常用方法的使用与实例

String类中提供了丰富的用于操作字符串的方法。 1、int indexOf(String str) 该方法用于返回当给定字符串在当前字符串中的位置,若当前字符串不包含给定字符串则返回-1。 重载的方法 int indexOf(String str,int formIndex),从指定下标处(...

2018-07-28 19:22:43

阅读数:56

评论数:0

提示
确定要删除当前文章?
取消 删除
关闭
关闭