Java
记录一下因为Thread本来就是实现了Runnable,包含Runnable的功能是很正常的啊!!至于两者的真正区别最主要的就是一个是继承,一个是实现;其他还有一些面向对象的思想,Runnable就相当于一个作业,而Thread才是真正的处理线程,我们需要的只是定义这个作业,然后将作业交给线程去处理
之前学习线程池记录的笔记,现在放到这,顺便复习一下~一、使用线程池的好处:1、降低资源的消耗。重复使用已创建的线程降低线程创建和销毁时的资源消耗2、提高响应速度。任务不需要等待线程创建就可以立即执行3、提高线程的可管理性。线程是稀缺资源,如果无限制的创建,不仅会消耗系统资源,还会降低系统的稳定性,使
HashMap、HashTable、ConcurrentHashMap 的区别
HashMap、HashTable、ConcurrentHashMapHashMap在多线程环境下,使用HashMap进行put操作会引起死循环,导致CPU 利用率接近100%。HashMap在并发进行put操作会引起死循环,因为多线程会导致HashMap的Entry链表形成环形数据结构,一旦形成,
这个是我之前在上海做发票业务工单时弄的,记录一下。当时需求是要将发票的pdf转化为图片展示,并支持长按图片进行保存。1.引用jar包<dependency><groupId>org.apache.pdfbox</groupId><artifactId>