首页
沸点
课程
数据标注
HOT
AI Coding
更多
直播
活动
APP
插件
直播
活动
APP
插件
搜索历史
清空
创作者中心
写文章
发沸点
写笔记
写代码
草稿箱
创作灵感
查看更多
登录
注册
确定删除此收藏集吗
删除后此收藏集将被移除
取消
确定删除
确定删除此文章吗
删除后此文章将被从当前收藏集中移除
取消
确定删除
编辑收藏集
名称:
描述:
0
/100
公开
当其他人关注此收藏集后不可再更改为隐私
隐私
仅自己可见此收藏集
取消
确定
learn
订阅
Devil077
更多收藏集
微信扫码分享
微信
新浪微博
QQ
15篇文章 · 0订阅
SpirngBoot | 启动原理 01
一个读者,也是我的好朋友投稿的一篇关于 SpringBoot 启动原理的文章,才大二就如此优秀,未来可期。 我一直想了解一下 SpirngBoot 的是如何启动的,我想就来写一篇关于 SpirngBoot 启动分析吧。第一次写那么高深的技术话题理解不到位的话也请多多包涵。 St…
前端全栈工程化开发专题 — JS中回调函数的深入解读
...
Java——HashMap源码解析
以下针对JDK 1.8版本中的HashMap进行分析。 哈希表基于Map接口的实现。此实现提供了所有可选的映射操作,并且允许键为null,值也为null。HashMap 除了不支持同步操作以及支持null的键值外,其功能大致等同于 Hashtable。这个类不保证元素的顺序,并…
ThreadLocal源码阅读
在趣链的面试中被问到ThreadLocal的相关问题,被问的一脸懵*,所以有次总结. 作用是为每个线程保存线程私有的变量.以空间换时间,也能保证数据的安全性. ThreadLocal并不是底层的集合类,而是一个工具类,所有的线程私有数据都被保存在各个Thread对象中一个叫做t…
Java锁,真的有这么复杂吗?
运行上面代码,会发现输出flag的值不是理想中10000,虽然volatile写入时候会通知其他线程的工作内存值无效,从主内存重写读取。i++是三步操作,读取-赋值-写入不能保证原子性。原子性:不能被中断要么成功要么失败。 比如此时主内存的flag值10,线程1和线程2读取到自…
JavaScript模块化原理浅析
模块化简单来说就是是指把一个复杂的系统分解到多个模块以方便编码。JS模块化的大致流程为:CommonJS(服务端) -> AMD(浏览器端)-> UMD(兼容了CommonJS和AMD) -> ES Module(ES6标准)。本文将从它们的用法进行介绍,简单实现其原理。并简易…
JavaScript 性能利器 —— Web Worker
Web Worker (工作线程) 是 HTML5 中提出的概念,分为两种类型,专用线程(Dedicated Web Worker) 和共享线程(Shared Web Worker)。专用线程仅能被创建它的脚本所使用(一个专用线程对应一个主线程),而共享线程能够在不同的脚本中使…
深入理解SpringBoot核心原理(二)--------初始化流程(run方法)
3.@EnableConfigurationProperties与@ConfigurationProperties->读取配置文件转换为bean。 4.@EnableAutoConfiguration、@AutoConfigurationPackage与@Import->实现b…
浅解强缓存和协商缓存
Web 缓存是可以自动保存常见文档副本的 HTTP 设备。当 Web 请求抵达缓存时, 如果本地有“已缓存的”副本,就可以从本地存储设备而不是原始服务器中提取这 个文档。(此结论来自http权威指南) 缓存减少了冗余的数据传输,节省了你的网络费用。 缓存缓解了网络瓶颈的问题。不…
JS引擎、运行时与调用栈概述
几乎所有人都已经听说了V8引擎的概念,大多数人都知道JavaScript是单线程运行的或者说是使用回调队列的。 接下来,我们将详细的讲述这些概念,解释JavaScript到底是怎样运行的。当知道了这些细节后,你就能合理利用已有的API写出更好的,非阻塞的应用。 如果你是Java…