Java

Java

Runnable和Thread比较

Runnable和Thread比较

记录一下因为Thread本来就是实现了Runnable,包含Runnable的功能是很正常的啊!!至于两者的真正区别最主要的就是一个是继承,一个是实现;其他还有一些面向对象的思想,Runnable就相当于一个作业,而Thread才是真正的处理线程,我们需要的只是定义这个作业,然后将作业交给线程去处理

2020-04-30
386 0
Java中的线程池

Java中的线程池

之前学习线程池记录的笔记,现在放到这,顺便复习一下~一、使用线程池的好处:1、降低资源的消耗。重复使用已创建的线程降低线程创建和销毁时的资源消耗2、提高响应速度。任务不需要等待线程创建就可以立即执行3、提高线程的可管理性。线程是稀缺资源,如果无限制的创建,不仅会消耗系统资源,还会降低系统的稳定性,使

2020-04-30
347 0
HashMap、HashTable、ConcurrentHashMap 的区别

HashMap、HashTable、ConcurrentHashMap 的区别

HashMap、HashTable、ConcurrentHashMapHashMap在多线程环境下,使用HashMap进行put操作会引起死循环,导致CPU 利用率接近100%。HashMap在并发进行put操作会引起死循环,因为多线程会导致HashMap的Entry链表形成环形数据结构,一旦形成,

2020-04-30
369 0
java 利用 pdfbox 实现PDF转为图片

java 利用 pdfbox 实现PDF转为图片

这个是我之前在上海做发票业务工单时弄的,记录一下。当时需求是要将发票的pdf转化为图片展示,并支持长按图片进行保存。1.引用jar包<dependency><groupId>org.apache.pdfbox</groupId><artifactId>

2020-04-30
458 0
分布式id生成算法-snowflake算法

分布式id生成算法-snowflake算法

snowflake算法是twitter开源的分布式id生成算法,采用Scala语言实现,是把一个64位的long型的id,1个bit是不用的,用其中的41bit作为毫秒数,用10bit作为工作机器id,12bit作为序列号。snowflake算法源码以下是找到的snowflake源码/***Twit

2020-01-13
637 0