- 博客(7)
- 收藏
- 关注
翻译 (二)Java 并行程序
1.线程状态:线程的所有状态中Thread 中的State枚举中定义:NEW,RUNNABLE,BLOCKED,WAITING,TIME_WAITING,TERMINATED 新建线程:New关键字,Thread t1 = new Thread(); t1.start() ,start是线程启动的方法,而run是线程内部的一个方法终止线程:Thread.stop() ,这个方法已经被废物
2017-12-13 16:28:53
476
翻译 Java高并发程序设计(一)
高并发的几个概念:1.同步和异步:同步方法调用一旦开始,调用者必须等待方法返回结果后,才能继续后续的执行!异步方法更像一个消息传递,一旦开始,方法调用就会立刻返回,调用者就可以继续后续的操作(不是同一个线程)。2.并行和并发:并行是真实的多个任务同时执行,而并发是多个任务交替执行!3.临界区:临界区用来表示一种公告资源或者说是共享数据,可以被多个线程使用,但是每一次只能一个线程使用它,
2017-12-13 13:12:23
707
翻译 (三)OutOfMemoryError异常
除了程序计数器外,虚拟机内存的其他几个运行时区域都会发生OutOfMemoryError,在虚拟机栈和本地方法栈中,会多出现一种异常:Stack Overflow,意思是请求深度超过了允许! (1)Java堆溢出:Java堆用于存储对象实例,只要不断的创建对象,并且保证GC Roots到对象之间有可达路径来避免GC回收这些对象,那么当对象数量超过的时候,就是异常的时候!Vm Args:
2017-12-09 13:58:14
370
翻译 (二)HotSpot虚拟机对象
(1)对象的创建: 虚拟机在遇到一条New指令时,首先将去检查这个指令的参数是否在常量池中定位到一个类的符号引用!并检查这个符号引用代表的类是否已被加载,解析和初始化过,如果没有,将先进行类的加载! 接下来,虚拟机将为新生的对象分配内存(大小在加载内的时候便已经确定),分配内存有两种方式:指针碰撞和空闲列表,空闲列表会对内存块进行记录,使用和未使用!在并发的过程中,内存已经被
2017-12-09 11:43:28
212
翻译 (一)Jvm运行时数据区
(1)程序计算器(Program Counter Register):Jvm中一块较小的内存空间!它可以看作是当前线程所执行的字节码的行号指示器,在虚拟机的概念模式(HotSpot)里,字节码解释器工作时就是通过改变这个计数器的值来选取下一条需要执行的字节码指令,分支,循环,跳转,异常处理,线程恢复等基础功能! Java虚拟机的多线程就是通过线程轮流切换并分配处理器执行时间的方
2017-12-09 10:07:14
300
转载 eclipse版本对应的jdk需求
转:http://blog.youkuaiyun.com/jieshaowang1229/article/details/51594753这两天一直安装一个插件,发现eclipse的版本还是很头疼,因为我这个eclipse无法下载hibernate4的插件,我下的是hibernate3,我之前弄了半天发现失败了,好不容易成功了,做项目的时候,发现我的版本插件有问题,这个时候,我发现我的eclipse无法下
2016-11-01 16:48:46
34099
1
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人