java
晨韵风
这个作者很懒,什么都没留下…
展开
-
JVM内存调优
JVM内存调优对JVM内存的系统级的调优主要的目的是减少GC的频率和Full GC的次数。1.Full GC会对整个堆进行整理,包括Young、Tenured和Perm。Full GC因为需要对整个堆进行回收,所以比较慢,因此应该尽可能减少Full GC的次数。2.导致Full GC的原因1)年老代(Tenured)被写满调优时尽量让对象在新生代GC时被回收、让对象在新生代多存活一段时间和不要创建过大的对象及数组避免直接在旧生代创建对象 。2)持久代Pemanet Gener原创 2020-12-09 23:14:10 · 162 阅读 · 0 评论 -
java并发之J.U.C - AQS
java.util.concurrent(J.U.C)大大提高了并发性能,AQS 被认为是 J.U.C 的核心。AbstractQueuedSynchronizer(AQS)CountDownLatch用来控制一个或者多个线程等待多个线程。维护了一个计数器 cnt,每次调用 countDown() 方法会让计数器的值减 1,减到 0 的时候,那些因为调用 await() 方法而在等待的线程就会被唤醒。public class CountdownLatchExample {.原创 2020-12-08 14:01:16 · 141 阅读 · 0 评论 -
偏向锁,轻量锁,自旋锁,锁粗化
这里的锁优化主要是指 JVM 对 synchronized 的优化。偏向锁偏向锁的思想是偏向于让第一个获取锁对象的线程,这个线程在之后获取该锁就不再需要进行同步操作,甚至连 CAS 操作也不再需要。当锁对象第一次被线程获得的时候,进入偏向状态,标记为 1 01。同时使用 CAS 操作将线程 ID 记录到 Mark Word 中,如果 CAS 操作成功,这个线程以后每次进入这个锁相关的同步块就不需要再进行任何同步操作。当有另外一个线程去尝试获取这个锁对象时,偏向状态就宣告结束,此时撤销偏.原创 2020-12-08 13:42:47 · 123 阅读 · 0 评论 -
user-agent各个参数详解
转自原文:https://blog.csdn.net/master_ning/article/details/81746879最近在研究ua信息,现在总结一下ua信息各个参数代表的意思以及哪些参数可以修改,哪些可以删除现在,随便拿出一个ua,Mozilla/5.0 (Linux; U; Android 7.0;m2 note Build/LMY47D) AppleWebKit/604...转载 2019-04-29 10:10:03 · 5611 阅读 · 0 评论 -
并发队列ConcurrentLinkedQueue和阻塞队列LinkedBlockingQueue用法
转自https://www.cnblogs.com/linjiqin/archive/2013/05/30/3108188.html在Java多线程应用中,队列的使用率很高,多数生产消费模型的首选数据结构就是队列(先进先出)。Java提供的线程安全的Queue可以分为阻塞队列和非阻塞队列,其中阻塞队列的典型例子是BlockingQueue,非阻塞队列的典型例子是Concur转载 2017-11-13 16:23:17 · 2118 阅读 · 0 评论 -
Java线程stop和suspend的废弃
JDK1.0定义了stop和suspend方法,stop用来直接终止线程,suspend会阻塞线程直到另一个线程调用resume.stop和suspend都有一些共同的点:都试图专横的控制一个给定了的线程的行为.从JDK1.2开始,这两个方法都被弃用了.stop天生就不安全,而经验告诉我们呢suspend方法会经常导致死锁。反对使用stop(),是因为它不安全。它会解除由线程获取的转载 2017-10-09 16:53:03 · 244 阅读 · 0 评论 -
HTTP请求中的form data和request payload的区别
原文转载自:http://xiaobaoqiu.github.io/blog/2014/09/04/form-data-vs-request-payload/HTTP请求中的form data和request payload的区别AJAX Post请求中常用的两种传参数的形式:form data 和 request payloadForm dataget请求的时转载 2017-09-09 10:37:36 · 3012 阅读 · 2 评论 -
使用Spring的@Scheduled实现定时任务
转自 http://blog.csdn.net/prisonbreak_/article/details/49180307Spring配置文件xmlns加入xmlns:task="http://www.springframework.org/schema/task"xsi:schemaLocation中加入 http://www.springfram转载 2017-09-07 15:04:57 · 189 阅读 · 0 评论 -
关于OOM
1)什么是OOM? OOM,全称“Out Of Memory”,翻译成中文就是“内存用完了”,来源于java.lang.OutOfMemoryError。看下关于的官方说明: Thrown when the Java Virtual Machine cannot allocate an object because it is out of memory, and no more memory转载 2017-09-15 10:09:36 · 534 阅读 · 0 评论 -
mysql批量插入数据
最近在做EXCEL的大批量插入时发现了一个问题。如果一个个插入的话小量的话还好。但是量稍微大一点就非常慢。然后用了MYBATIS的批量插入order="AFTER">SELECT LAST_INSERT_ID()insert into brand(brand_name, keywords,description ,address,cityid,l原创 2017-08-15 08:45:10 · 1314 阅读 · 0 评论 -
JAVA使用ROME读取百度RSS的编码错误问题
这里就不贴上源代码了,来讲一下遇到的问题。在使用JAVA读取RSS的时,使用分类新闻订阅都没有什么问题,但是这并不符合我的需求,我要对特定的内容进行订阅。百度的关键词订阅正合我意,但是当我将URL改为关键词订阅的URL时,发生了报错。查了下资料说是编码格式的问题。起初我以为是参数没有进行urlencode的原因,修改后并无效果。后来发现是XML的编码原因,百度的关键词订阅是原创 2017-07-20 16:43:52 · 633 阅读 · 5 评论 -
Java虚拟机类加载机制
转自http://www.cnblogs.com/yshb/archive/2012/11/05/2756194.html虚拟机类加载机制:虚拟机把描述类的数据从class文件加载到内存,并对数据进行校验、转换解析和初始化,最终形成可以被虚拟机直接使用的Java类型。Java语言里,类型的加载和连接过程是在程序运行期间完成的。 类的生命周期: 加载 loading转载 2017-08-18 10:12:08 · 197 阅读 · 1 评论 -
JAVA正则表达式去除标签
// 删除标签 public static String delHTMLTag(String htmlStr) { String regEx_script = "]*?>[\\s\\S]*?"; // 定义script的正则表达式 String regEx_style = "]*?>[\\s\\S]*?"; // 定义style的正则表达式转载 2017-07-21 09:00:36 · 1470 阅读 · 0 评论 -
Java RSS LIB 评测
原文链接:http://blog.csdn.net/xfworld/article/details/1180158我的目标是做一个简单的portlet,每次读取新浪的RSS站点显示最新的新闻条目。 花了一个下午,去sourceforge和google 上搜索 opensource 的 java rss lib,还真有不少(顺便提一下,sourceforget的搜索真的很转载 2017-07-20 16:51:29 · 292 阅读 · 0 评论 -
JAVA转义字符
转移字符对应的英文是escape character (escape还有转义的意思)字母前面加上捺斜线"\"来表示常见的那些不能显示的ASCII字符.称为转义字符.如\0,\t,\n等,就称为转义字符,因为后面的字符,都不是它本来的ASCII字符意思了。所有的转义字符和所对应的意义:转义字符意义ASCII码值(十进制)\原创 2017-07-03 16:43:20 · 298 阅读 · 0 评论