logo
publist
写文章

简介

该用户还未填写简介

擅长的技术栈

可提供的服务

暂无可提供的服务

从jvm角度看java多线程

最近在学习jvm,发现随着对虚拟机底层的了解,对java的多线程也有了全新的认识,原来一个小小的synchronized关键字里别有洞天。决定把自己关于java多线程的所学整理成一篇文章,从最基础的为什么使用多线程,一直深入讲解到jvm底层的锁实现。多线程的目的为什么要使用多线程?可以简单的分两个方面来说:在多个cpu核心下,多线程的好处是显而易见的,不然多个cpu核心只跑一个线程其他...

#jvm
深入理解java虚拟机

一、为什么要学习Java虚拟机?      这里我们使用举例来说明为什么要学习Java虚拟机,其实这个问题就和为什么要学习数据结构和算法是一个道理,工欲善其事,必先利其器。曾经的我经常害怕处理内存溢出的问题,因为不知道他为什么会出现这个问题,当我在看了这本书以后明白了垃圾回收算法,以及JVM是如何帮助我们处理GC的,这个时候当出现这个问题的时候我就明白需要查找GC Root,或者查看GC日志,..

linux常用命令(四)

1.rm [选项] 文件… | 一个或多个文件或目录-f  忽略不存在的文件,不给出提示-i  交互式删除-r  将列出的目录及其子目录递归删除-v  列出详细信息2.echo:显示内容-n  输出后不换行-e  遇到转义字符特殊处理     eg:       echo "hehe"   显示hehe       ehco -e "hehe"    显示h

vim 替换文本指令

在日常项目开发中,如果经常在linux服务器上写脚本或者直接用vim进行业务开发的会遇到替换文本的情况,会使用vim的文本替换指令。参考一些专业网站的一些总结,将一些常用的vim替换指令记一下,希望对大家有帮助:1.  替换当前行中的内容:    :s/from/to/    (s即substitude)        :s/from/to/    :  将当前行中的第一个from,替换成...

#linux
ThreadPoolExecutor参数解析

一、ThreadPoolExecutor的重要参数1)corePoolSize:核心线程数核心线程会一直存活,及时没有任务需要执行当线程数小于核心线程数时,即使有线程空闲,线程池也会优先创建新线程处理设置allowCoreThreadTimeout=true(默认false)时,核心线程会超时关闭2)queueCapacity:任务队列容量(阻塞队列)当核心线程数达到最大时...

引入仿拉钩vue组件运行出错

一、问题      本人在linux上拉取一个仿拉钩的vue项目使用,该项目地址:git clone https://github.com/BrotherWY/lagou.git 然后进入拉取下来的项目使用以下命令                 cnpm/npm install --save                 cnpm/npm run dev尝试在本地运行...

vue引用第三方组件覆盖原有样式

问题通过全局样式或者去掉父组件scope方式修改子组件样式不生效解决方式1.引入的样式文件格式不争取,例如stylus、scss等,而不是统一以.css为后缀的文件2.去掉scope 在父组件style内修改样式,使用!important 提权,优先使用该样式通常做法局部引入在各自vue文件中使用,互不干扰style标签里面的 关键字scoped【限位标...

#前端
node-sass 依赖包不能安装问题

1.问题     最近在捣鼓毕业设计时,因为需要进行微信公众号开发,学起了vue。在用vue开发页面的时候运行npm run dev 指令出现了下面的错误:gyp ERR! configure errorgyp ERR! stack Error: Can't find Python executable "python", you can set the PYTHON env

#前端
到底了