Wesley13 Wesley13
3年前
java并发编程实战:第十六章
一、什么是内存模型,为什么要使用它如果缺少同步,那么将会有许多因素使得线程无法立即甚至永远看到一个线程的操作结果编译器把变量保存在本地寄存器而不是内存中编译器中生成的指令顺序,可以与源代码中的顺序不同处理器采用乱序或并行的方式来执行指令保存在处理器本地缓存中的值,对于其他处理器是不可见在单线程中,只要
Wesley13 Wesley13
3年前
java 虚拟机 收集器 总结
java虚拟机收集器总结|垃圾收集器|新生代|老年代|jvm参
Bill78 Bill78
4年前
python中的各种锁
一、全局解释器锁(GIL)  1、什么是全局解释器锁      在同一个进程中只要有一个线程获取了全局解释器(cpu)的使用权限,那么其他的线程就必须等待该线程的全局解释器(cpu)使    用权消失后才能使用全局解释器(cpu),即时多个线程直接不会相互影响在同一个进程下也只有一个线程使用cpu,这样的机制称为全局    解释器锁(GIL)。 
Stella981 Stella981
3年前
Spring 源码(十二)Spring 中核心的后置处理器
BeanFactoryBeanFactoryPostProcessor:BeanFactory后置处理器ConfigurationClassPostProcessor:解析配置类的BeanFactory后置处理器BeanBeanPostProcessors:Bean
Stella981 Stella981
3年前
Servlet主要相关类核心类 容器调用的过程浅析 servlet解读 怎么调用 Servlet是什么 工作机制
WEB简介Web项目是B/S结构浏览器/服务器模式的浏览器发起请求,服务器作出响应请求的发起和响应使用HTTP协议进行通讯所谓协议也就是一种固定格式而Socket是应用层与传输层的一层编程接口,屏蔽了传输层的细节所以Web项目也就是通过Socket发送HTTP请求和响应的过程只不过请求是浏览器发出来的响应是服务器发
Stella981 Stella981
3年前
JSp的三大指令
三大指令page作用:告诉Tomcat服务器如何翻译jsp.文件语法:<%@pagecontentType"text/html;charsetUTF8"服务器发送浏览器的数据类型和内容编码la
Stella981 Stella981
3年前
JVM垃圾回收算法
一、如何判断对象时候需要回收1.引用计数法        给对象添加一个引用计数器,每当有一个地方引用它,计数器加1;引用失效时,计数器减1。计数器为0的对象就表示不可用。      优点:效率高,实现简单。      缺点:对象间如果存在循环引用的情况,就会导致计数器不可能为0,计数器无法通知GC进行回收。2.可达性分析算法
Stella981 Stella981
3年前
Http 缓存策略
1)浏览器缓存策略浏览器每次发起请求时,先在本地缓存中查找结果以及缓存标识,根据缓存标识来判断是否使用本地缓存。如果缓存有效,则使用本地缓存;否则,则向服务器发起请求并携带缓存标识。根据是否需向服务器发起HTTP请求,将缓存过程划分为两个部分:强制缓存和协商缓存,强缓优先于协商缓存。强缓存,服务器通知浏览器一个缓存时间,在
爬虫中无头浏览器如何选择
我们日常使用浏览器的步骤为:启动浏览器、打开一个网页、进行交互。而无头浏览器指的是我们使用脚本来执行以上过程的浏览器,能模拟真实的浏览器使用场景。主要是用作爬虫,用以捕捉Web上的各类数据;这里的无头主要是指没有界面,完全是后台操作。它就是一个真实的浏览器。只是这个浏览器是无界面的。在爬虫中使用无头浏览器有很多的注意事项,比如我们的业务场景是否适合使用无头浏
高防服务器与高防IP的区别和联系
高防服务器与高防IP首先在名称上就能清楚地知道一个是服务器一个是IP,是不同的两样东西,但使用高防IP好还是使用高防服务器好呢?这是不少客户的疑问。首先,跟着天下数据小编一起来了解高防服务器与高防IP在概念上的不同。高防服务器:高防服务器指独立单个防御10G以上的服务器,属于服务器的一种类型,根据各个IDC机房的环境不同,有的提供有硬防,有使用软防。从防御范