java se
文章平均质量分 83
跬步_千里
这个作者很懒,什么都没留下…
展开
-
java server socket通信
三种常见构造器Accept方法用于产生”阻塞”,直到接受到一个连接,并且返回一个客户端的Socket对象实例。”阻塞”是一个术语,它使程序运行暂时”停留”在这个地方,直到一个会话产生,然后程序继续;通常”阻塞”是由循环产生的。. getInputStream方法获得网络连接输入,同时返回一个InputStream对象实例。 . getOutputStream方法连接的另一端将得到输入,...原创 2018-09-13 16:05:11 · 898 阅读 · 0 评论 -
多行程环境下使用volatile修饰变量在就真的安全了么?
volatile生效的关键是缓存一致性协议,在修改变量的时候通知其他已读取缓存的线程此变量已经修改,触发其他线程对变量缓存的重新读取,以此保证数据不会脏读 。但是这里有个问题,修改也就是往内存写变量的时候才会触发检查。而多线程环境下变量安全的标志是(原子性,可见性,有序性),这里只实现了可见性。变量操作的过程包括读取到缓存中和操作后写入磁盘两个操作,写入磁盘可以保证其他线程立刻获取最新...原创 2018-09-13 18:12:01 · 964 阅读 · 0 评论 -
出现 java.lang.OutOfMemoryError: PermGen space 错误的原因及解决方法
1 错误描述在正常启动 Tomcat 的时候,报出如下错误:2 错误原因通过观察上面的错误描述,我们可以知道错误原因:java.lang.OutOfMemoryError: PermGen space此错误,为内存溢出错误。更具体的说,是指方法区(永久代)内存溢出!3 解决方法由于 JDK 自带的虚拟机为 HotSpot,且其支持内存区域的动态扩展,因此可以通过设置虚拟机参数...转载 2018-12-05 17:01:10 · 625 阅读 · 0 评论 -
Java学习1:图解Java内存分析详解(实例)
版权声明:本文为博主原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。本文链接:https://blog.csdn.net/qq_36743482/article/details/78527312随着工作的深入,越发需要重新梳理一遍Java知识点,本系列是重新学习Java所写。首先需要明白以下几点:栈空间(stack),连续的存储空间,遵循后...转载 2019-09-20 11:43:02 · 187 阅读 · 0 评论