ArrayList 1.2 作为List接口的主要实现类 线程不安全的,效率高 底层用Object[] elementData存储 jdk7: ArrayList list = new ArrayList() 底层创建了长度是10的Object【】数组 添加导致底层数组容量不够,则扩容。 每次扩容1 ...
分类:
其他好文 时间:
2019-11-29 15:50:14
阅读次数:
45
以前没有注意到SimpleDateFormat线程不安全的问题,写时间工具类,一般写成静态的成员变量,不知,此种写法的危险性!在此讨论一下SimpleDateFormat线程不安全问题,以及解决方法。 为什么SimpleDateFormat不安全?直接上一个例子,日期格式化成字符串: 运行一段时间, ...
分类:
编程语言 时间:
2019-11-28 21:19:10
阅读次数:
96
用代码来模拟铁路售票系统,实现通过四个售票点发售某日某次列车的100张车票,一个售票点用一个线程表示 第一种方法:通过继承Thread类的方法创建线程 package com.Gary1; public class TicketThread extends Thread{ //设置有100张票 pr ...
分类:
编程语言 时间:
2019-11-28 01:34:36
阅读次数:
90
curl默认是线程不安全的, 要在多线程环境下使用需要做一些特殊处理 https://curl.haxx.se/libcurl/c/opensslthreadlock.html https://blog.csdn.net/jaylong35/article/details/6988690 https ...
分类:
编程语言 时间:
2019-11-24 22:25:10
阅读次数:
179
1. 简介 HashMap是一个哈希表,线程不安全, 唯一, 可重复,允许 和`value`为null。遍历时是无序的。 底层结构是基于链表散列,也就是数组+链表。数组也被称为哈希桶,桶里面就装着链表,链表中的每个节点,就是哈希表中的每个元素。 在JDK8中,当链表长度达到8的时候,就会转为红黑树。 ...
分类:
编程语言 时间:
2019-11-22 23:47:18
阅读次数:
73
不考虑多线程并发的情况下,容器类一般使用ArrayList、HashMap等线程不安全的类,效率更高。在并发场景下,常会用到ConcurrentHashMap、ArrayBlockingQueue等线程安全的容器类,虽然牺牲了一些效率,但却得到了安全。 ...
分类:
编程语言 时间:
2019-11-18 20:38:22
阅读次数:
82
1、使用线程池创建并发环境解析日期 package com.zh.time; import java.text.SimpleDateFormat; import java.util.ArrayList; import java.util.Date; import java.util.List; im ...
分类:
编程语言 时间:
2019-11-16 00:54:35
阅读次数:
75
一、概述 HashMap,基于哈希结构的Map接口的一个实现,无序,允许null键值对,线程不安全的。可以使用集合工具类Collections中的synchronizedMap方法,去创建一个线程安全的集合map。 在jdk1.7中,HashMap主要是基于 数组+链表 的结构实现的。链表的存在主要 ...
分类:
其他好文 时间:
2019-11-14 18:32:20
阅读次数:
61
对于HashMap,如果是java程序员,那么定然不会陌生,对于HashMap,应该说是最常用的一种Map结构了,同样在面试当中也会屡屡被提问到,常见的几种题目: HashMap的默认容量? HashMap是如何扩容的? HashMap的数组大小为什么一定是2的幂? HashMap为什么是线程不安全 ...
分类:
其他好文 时间:
2019-11-12 23:08:26
阅读次数:
120
背景 java的日期和时间API设计不理想,java8引入新的时间和日期API就是为了解决这个问题。 |老的日期API的核心类|缺点| | | | |Date|月从0开始,年最小从1900年开始,没有时区的概念| |Calendar|月从0开始| |DateFormat|线程不安全| |其它|同时存 ...
分类:
编程语言 时间:
2019-11-12 20:32:41
阅读次数:
100