- 博客(6)
- 收藏
- 关注
原创 生产者-消费者线程模式
用队列实现的一个简单的生产者消费者模式,代码如下:import java.util.LinkedList;import java.util.Random;//消费者线程class A extends Thread{ private LinkedList<Integer> queue; //用一个队列表示商品缓冲区 public A(LinkedLis...
2018-09-16 09:55:11 245
原创 Java线程池详解(JDK1.8)
为什么使用线程池? 首先,一个线程的线程的创建和销毁都需要消耗资源,特别是当线程中执行的是比较简单的任务时,大部分系统资源花费在线程的创建和销毁上,把过多的资源都用在了准备工作上,这显然不是我们想要的。可见,“每任务每线程”的做法并不合理。从另一个角度看,每个线程的创建和销毁过程都是一样的,同样的过程为什么我们要重复做那么多次呢?于是就产生了线程池的思想。 线程池...
2018-08-30 22:14:38 1820
原创 Thread类中interrupt()、interrupted()和isInterrupted()方法详解
首先看看官方说明:interrupt()方法其作用是中断此线程(此线程不一定是当前线程,而是指调用该方法的Thread实例所代表的线程),但实际上只是给线程设置一个中断标志,线程仍会继续运行。 interrupted()方法作用是测试当前线程是否被中断(检查中断标志),返回一个boolean并清除中断状态,第二次再调用时中断状态已经被清除,将返回一个false。 ...
2018-08-06 11:38:53 113837 34
原创 JVM——类加载(Class Loading)
Java虚拟机中的类的加载可分为加载、验证、准备、解析、初始化五个过程,下面对这几个过程进行详细分析。 加载 此过程中虚拟机需要完成以下3件事: 1)通过一个类的全限定明来获取定义此类的二进制字节流; 2)将这个字节流所代表的静态结构转化为方法区的运行时数据结构; 3)在内存中生成一个代表这个类的ja...
2018-06-02 18:07:22 643 1
翻译 JVM——内存模型
Java虚拟机运行时的内存主要分为方法区、堆区、栈区、本地方法栈、程序计数器五个部分,如下图所示 (图片来源网络) 程序计数器 位于处理器内部,所包含的寄存器数量有限,由...
2018-06-01 16:38:23 129
原创 MyEclipse中导出JAR包
首先点击左上角File->Export,会弹出以下界面选择Java->JAR file,点击Next;选择要导出的文件,可以把不同包下的类一起导出,然后选择导出文件的存放位置,点击Next进行下一步操作;这个可以直接点击下一步;如果要导出的文件中包含有main()函数,要指明main()函数所在的类,否则导出的jar包无法直接点击运行,最后点击Finish完成操作,就可以在指定位置找到...
2018-05-23 19:41:03 1295
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人