- 博客(5)
- 资源 (2)
- 收藏
- 关注
原创 JVM 常用参数
JVM 常用参数-Xmx/-Xms最大和初始堆大小。最大默认为物理内存的1/4,初始默认为物理内存的1/64。-Xss等价于-XX:ThresholdStackSize。用于设置单个栈的大小,系统默认值是0,不代表栈大小为0。而是根据操作系统的不同,有不同的值。比如64位的Linux系统是1024K,而Windows系统依赖于虚拟内存。-Xmn新生代大小,一般不调。-XX:MetaspaceSize设置元空间大小。-XX:+PrintGCDetails输出GC收集信息,包含GC和Full
2020-10-24 20:39:51 313
原创 阻塞队列 BlockingQueue 实现生产者消费者模式线程通信
概念:当阻塞队列为空时,获取(take)操作是阻塞的;当阻塞队列为满时,添加(put)操作是阻塞的。好处:阻塞队列不用手动控制什么时候该被阻塞,什么时候该被唤醒,简化了操作。体系:Collection→Queue→BlockingQueue→七个阻塞队列实现类。类名作用ArrayBlockingQueue由数组构成的有界阻塞队列LinkedBlockingQueue由链表构成的有界阻塞队列PriorityBlockingQueue支持优先级排序的无界阻塞队列
2020-10-13 22:09:36 529 1
原创 Synchronized和Lock的区别
synchronized关键字和java.util.concurrent.locks.Lock都能加锁,两者有什么区别呢?原始构成:sync是JVM层面的,底层通过monitorenter和monitorexit来实现的。Lock是JDK API层面的。(sync一个enter会有两个exit,一个是正常退出,一个是异常退出)使用方法:sync不需要手动释放锁,而Lock需要手动释放。是否可中断:sync不可中断,除非抛出异常或者正常运行完成。Lock是可中断的,通过调用interrupt()方法。
2020-10-13 21:30:48 225
原创 跨境电商Api接口地址汇总
汇集主流跨境电商平台Api对接地址:amazon:http://docs.developer.amazonservices.com/zh_CN/dev_guide/DG_Endpoints.htmlAliexpress:https://developers.aliexpress.com/doc.htm?docId=108334&docType=1Ebay(SDK):https://developer.ebay.com/devzone/xml/docs/Reference/eBay/index.
2020-10-10 10:37:20 3825 1
原创 ReentrantReadWriteLock 实现手写缓存,并发读取、阻塞添加
前言我们在大多数业务中遇到并发问题,最先想到的是,Synchorized,以及 ReentrantLock,但是这两种锁是重量级的,也是阻塞的锁,一个线程获取了锁,其他线程必须阻塞,并发性能大大降低。今天我们来介绍一下java.util.concurrent.locks包下面的另一把锁:ReadWriteLock 读写锁,顾名思义,就是可以区分读还是写操作,展现不同的锁类型,做到并发读取,阻塞写入,使性能大大提升。案例本文我们使用一个简单的手写缓存Demo来展示一下锁的特性以及功能。package
2020-10-08 17:50:30 310
Navicat Premium_11.2.7简体中文版.rar
2020-05-14
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人