91名师指路-头部
首页
发布需求
项目流程图
客服QQ
登录
注册
付费问答
付费问答
技术博客
源码买卖
付费问答
技术博客
源码买卖
资料下载
日程管理
91小程序
让能力变成价值! 不止写博客能赚钱,上传源码也能赚钱。例如:您写了一篇博客,当网友遇到问题咨询您时会向你支付咨询费,并且下载您上传的源码也会向您支付对应的费用。
博客列表-91名师指路91mszl.com-让能力变成价值
博客分类
前端
jquery
Nodejs
vue
Angular
Html5
bootstrap
其他
后端
java
C#
Python
Php
C++
Ruby
Go
Erlang
其他
移动开发
ios
Android
微信支付
微信小程序
支付宝支付
银联支付
Windows Phone
其他
数据库
Oracle
Sqlserver
Db2
Mysql
MongoDB
Postgresql
其他
测试
loadrunner
jmeter
其他
运维
jenkins
svn
Git
sonarqube
Nginx
Cdn
jdk
Maven
Windows系统
Linux系统
其他
工作流
Activiti
jbpm
其他
搜索引擎
solr
lucene
ElasticSearch
其他
缓存
Redis
memCache
其他
消息队列
ActiveMQ
RabbitMQ
ZeroMQ
Kafka
MetaMQ
RocketMQ
写博客
博客管理
原
jvm常见的垃圾回收算法
jvm常见的垃圾回收算法:(1)引用计数。(2)复制。(3)标记清除。(4)标记整理。一:引用计数二:复制(用于新生代)MinorGC的过程(复制->清空->互换)1:eden、SurvivorFrom 复制到 SurvivorTo,年龄+1 首先,当Eden区满的时候会触发第一次GC,把还活着的对象拷贝到SurvivorFrom区,当Eden区再次触发GC的时候会扫描Eden区和Fr
2019-12-04 15:58:31 阅读(969)
原
jvm体系结构概览
jvm体系结构概览:GC的作用区域需要有垃圾回收。
2019-12-04 15:51:45 阅读(871)
原
java 死锁的产生和定位分析
死锁的概念:死锁是指两个或两个以上的进程在执行过程中,因争夺资源而造成的一种相互等待的现象,若无外力干涉,那他们都将无法推进下去,如果系统资源充足,进程的资源请求都能够得到满足,死锁出现的可能性就很低,否则就会因争夺有限的资源而陷入死锁。死锁产生的原因:(1)系统资源不足。(2)进程运行推进的顺序不合适。(3)资源分配不当。死锁的代码如下:模拟场景:线程A自己持有锁A,试图再去获取锁B,线程B自己
2019-12-04 11:16:30 阅读(1021)
原
线程池配置合理的线程数(七)
线程池的线程数配置,主要看服务器是属于以下哪种类型:(1)CPU密集型。(2)IO密集型。一:CPU密集型算法:(1)名称解释:CPU密集型的意思是该任务需要大量的运算,而没有阻塞,CPU一直全速运行。CPU密集任务只有在真正多核CPU上才可能得到加速(通过多线程),而在单核CPU上,无论你开几个模拟的多线程该任务都不可能得到加速,因为CPU总的运算能力就那些。(2)计算方法:CPU密集型任务配置
2019-12-04 10:12:45 阅读(1089)
原
手写线程池(六)
题外话:在面试的时候,如果面试官问你:你在工作中单一的/固定数的/可变你的三种创建线程池的方法,你用哪个多?答:一个都不用,我们都是自己手写的。因为阿里巴巴开发手册里面明确的提到: 线程池不允许使用 Executors 去创建,而是通过 ThreadPoolExecutor 的方式。一:手写一个线程池采用AbortPolicy拒绝策略的代码如下:package com.mszl.thread
2019-12-03 18:11:40 阅读(1017)
原
线程池的四种拒绝策略(五)
线程池的四种拒绝策略:(1)AbortPolicy(默认):直接抛出RejectedException异常阻止系统正常运行。(2)CallerRunPolicy:“调用者运行”一种调节机制,该策略既不会抛弃任务,也不会抛出异常,而是将某些任务回退到调用者,从而降低新任务的流量。(3)DiscardOldestPolicy:抛弃队列中等待最久的任务,然后把当前任务加入队列中尝试再次提交当前任务。(4
2019-12-03 15:51:55 阅读(877)
原
线程池的工作原理(四)
一:ThreadPoolExecutor的execute方法的执行示意图:二:线程池的主要处理流程总结:(1)在创建线程池后,等待提交过来的任务请求。(2)当调用execute()方法添加一个请求任务是,线程池会做如下判断: (2.1)如果正在运行的线程数量小于corePoolSize,那么马上创建线程运行这个任务。 &
2019-12-03 15:37:55 阅读(911)
原
线程池中的七大参数(三)
线程池中的七大参数如下:(1)corePoolSize:线程池中的常驻核心线程数。(2)maximumPoolSize:线程池能够容纳同时执行的最大线程数,此值大于等于1。(3)keepAliveTime:多余的空闲线程存活时间,当空间时间达到keepAliveTime值时,多余的线程会被销毁直到只剩下corePoolSize个线程为止。(4)unit:keepAliveTime的单位。(5)wo
2019-12-03 14:17:59 阅读(1463)
原
线程池的三种常用方式(二)
线程池的三种常用方式:(1)Executors.newFixedThreadPool(int)。执行一个长期的任务,性能好很多。(2)Executors.newSingleThreadExecutor()。一个任务一个线程执行的任务场景。(3)Executors.newCachedThreadPool()。适用:执行很多短期异步的小程序或者负载较轻的服务器。一:newFixedThreadPool
2019-12-03 12:26:17 阅读(1221)
原
线程池的介绍和优势(一)
线程池介绍:线程池做的工作主要是控制运行的线程的数量,处理过程中将任务加入队列,然后在线程创建后启动这些任务,如果线程超过了最大数量,超出的数量的线程排队等候,等其他线程执行完毕,再从队列中取出任务来执行。 线程池的主要特点:线程复用,控制最大并发数,管理线程。(1)降低资源消耗,通过重复利用自己创建的线程降低线程创建和销毁造成的消耗。(2)提高响应速度,当任务到达时,任务可以不需要等到
2019-12-03 11:33:37 阅读(870)
共 469 行数据
首页
上一页
30
31
32
33
34
35
36
37
下一页
尾页
到第
页
确定
91名师指路-底部