JVM探秘:四种引用、对象的生存与死亡

本系列笔记主要基于《深入理解Java虚拟机:JVM高级特性与最佳实践 第2版》,是这本书的读书笔记。 Java虚拟机的内存区域中,程序计数器、Java栈和本地方法栈是线程私有的,随线程而生随线程而灭,因此这几个区域的内存回收和分配都有确定性,所以主要探究的是Java堆和方法区的内存分配及回收。 Java堆 在Java堆中存放着所有的对象实例,垃圾收集器在对堆进行回收前,第一件事就是判断这些对象中哪些还存活,哪些已经死去(即不会再被使用到的对象)。 Java中的引用 在JDK1.2及之前,关于引
分类: 其他 发布时间: 01-01 21:01 阅读次数: 0

innerText内容中出现其他字符 什么鬼

、 经发现 innerHTML: "<i class="larry-icon undefined" data-icon="undefined"></i><cite>添加的2级菜单2020/1/1 17:41:38</cite><i class="layui-icon layui-unselect layui-tab-close" data-id="1">ဆ</i>" innerText: "添加的2级菜单2020/1/1 17:41:38ဆ"。
分类: 其他 发布时间: 01-01 21:01 阅读次数: 0

[WC2014]紫荆花之恋 - 动态点分治 + 平衡树

Task1 N<=1000 \(O(n^2)\)算法随便乱搞。 源代码 Task2 N<= 1e5 且为链 考虑新加入一个节点后,因为是链,所以每个节点到新加入的节点的距离的增量是相同的。 观察一下两个小精灵能够成为好朋友的条件: \[ dist(i,j)\le r_i + r_j \] 移个项: \[ dist(i,j) - r_j \le r_j \] 于是可以用平衡树维护每个点的\(dist(i,j)-r_j\),然后直接查询即可。 算法复杂度\(O(N\log N)\)。 源代码 Ta
分类: 其他 发布时间: 01-01 21:01 阅读次数: 0

你好2020

2020,新的一年,愿身体健康,工作顺利,万事如意! 新的一年,要改掉每天在博客园写随笔的习惯,努力做到以下几点: 知行合一:看音视频、书籍文章时都要思考记录,并将好的东西分享,学到的方法体系要想法立即转化为行动,应用到日常生活中,勇敢的迈出第一步,记住哪怕是坏的开始也是成功的三分之一。 学习别人的长处:多从积极主动的方面看待人和事,善于发现别人的长处,有些事你觉得很难,但对某些人来说就很容易,凡是不要局限在自己已有认知的狭小空间中,你遇到的难题未必无解,要善于找到并请教此方面专长的人提升自己
分类: 其他 发布时间: 01-01 21:01 阅读次数: 0

大白话聊聊Java并发面试问题之Java 8如何优化CAS性能?

本文转载自石杉的架构笔记 一、前情回顾 上篇文章给大家聊了一下volatile的原理,具体参见:《大白话聊聊Java并发面试问题之volatile到底是什么?》。 这篇文章给大家聊一下java并发包下的CAS相关的原子操作,以及Java 8如何改进和优化CAS操作的性能。 因为Atomic系列的原子类,无论在并发编程、JDK源码、还是各种开源项目中,都经常用到。而且在Java并发面试中,这一块也属于比较高频的考点,所以还是值得给大家聊一聊。 二、场景引入,问题凸现 好,我们正式开始!假设多个线
分类: 其他 发布时间: 01-01 21:01 阅读次数: 0

css基础入门1

css基础入门 css语法结构 选择器{属性名:属性值;属性名2:属性值2} css三种引入方式 1.通过<link>标签引入css文件 这是最正规的写法 2.在<head>中的<style>内直接写css代码 3.标签内的style属性中直接写css代码 查找标签的六种选择器 基本选择器,组合选择器,属性选择器,分组与嵌套,伪类选择器,伪元素选择器 基本选择器 1.标签选择器 将页面上所有的div内部的文本变成红色 div{ color:red; } 2.类选择器 让所有的具有c1类
分类: 其他 发布时间: 01-01 21:01 阅读次数: 0

IO java标准输入与输出

1.文件输出流 (java IO简介) /** * java io 标准的输入与输出 * 使用java IO我们可以对外界设备已相同的方式进行 * 读写完成数据交换. * * java IO将"读"与"写"按照方向进行了划分: * 输入:从外界到程序的方向,用于让程序获取外界数据因此输入是"读"数据的操作 * 输出:从程序到外界的方向,用于将数据"写"出的操作. * * java IO以"流"的形式表示读写功能 * java.io.InputStream 输入流,通过
分类: 其他 发布时间: 01-01 21:01 阅读次数: 0

【Docker】Docker启动 报 Get Permission Denied

问题描述: 在搭建个人博客时,使用Docker部署,启动Docker时报错,Get Permission Denied...... 原因docker进程使用Unix Socket而不是TCP端口。而默认情况下,Unix socket属于root用户,需要root权限才能访问。 经百度查到解决办法 解决方法1 使用sudo获取管理员权限,运行docker命令 解决方法2 docker守护进程启动的时候,会默认赋予名字为docker的用户组读写Unix socket的权限,因此只要创建docker
分类: 其他 发布时间: 01-01 21:01 阅读次数: 0

数组:数组中重复的数字

在一个长度为n的数组里的所有数字都在0到n-1的范围内。 数组中某些数字是重复的,但不知道有几个数字是重复的。也不知道每个数字重复几次。请找出数组中任意一个重复的数字。 例如,如果输入长度为7的数组{2,3,1,0,2,5,3},那么对应的输出是第一个重复的数字2。 bool duplicate(int numbers[], int length, int* duplication) { for(int i = 0; i < length; i++){
分类: 其他 发布时间: 01-01 21:01 阅读次数: 0

大白话聊聊Java并发面试问题之谈谈你对AQS的理解?

本文转载自石杉的架构笔记 一、写在前面 上一篇文章聊了一下java并发中常用的原子类的原理和Java 8的优化,具体请参见文章:《大白话聊聊Java并发面试问题之Java 8如何优化CAS性能?》。 这篇文章,我们来聊聊面试的时候比较有杀伤力的一个问题:聊聊你对AQS的理解? 之前有同学反馈,去互联网公司面试,面试官聊到并发时就问到了这个问题。当时那位同学内心估计受到了一万点伤害。。。 因为首先,很多人还真的连AQS是什么都不知道,可能听都没听说过。或者有的人听说过AQS这个名词,但是可能连具
分类: 其他 发布时间: 01-01 21:01 阅读次数: 0

Python栈溢出【新手必学】

python3.5.4 递归函数最恶心的时候莫非栈溢出(Stack overflow)。 PS:另外很多人在学习Python的过程中,往往因为没有好的教程或者没人指导从而导致自己容易放弃,为此我建了个Python交流.裙 :一久武其而而流一思(数字的谐音)转换下可以找到了,里面有最新Python教程项目可拿,不懂的问题多跟里面的人交流,都会解决哦! 如何解决? 人为设置递归深度 使用python写的递归程序如果递归太深, 那么极有可能因为超过系统默认的递归深度限制而出现错误。一般默认递归长度在
分类: 其他 发布时间: 01-01 21:01 阅读次数: 0

一元函数微分概念与计算(二)

微分及其误差 分段函数的导数 根据左导数 是否等于 右导数,判定 f '(x0) 例题,y = ln|x|,求y' 一阶微分形式不变 df(u) = f ' (u)du,用链式求导法则,求到底 常见的导数 (ln |x|)' = 1/x (ln |u(x)|)' = u'(x)/u(x) 反函数的导数 设y = f(x)可导,且f'(x)≠0,则 f'(x)必保号(恒正或者恒负),f(x)必单调 (单调递增或单调递减) 互为反函数的导数互为倒数 利用反函数求导数 参数方程二阶导 隐函数求导法
分类: 其他 发布时间: 01-01 21:01 阅读次数: 0

JSON 文件的存取

import json data = {'Tom': {'Weight:': 65, 'Score': 90, 'Height': 170}} # json.dumps 将字典转化为 JSON 编码的字符串 json_str = json.dumps(data) print(type(json_str), json_str) # json.loads 将 JSON 编码的字符串转化为字典 data_from_str = json.loads(json_str) print(type(data
分类: 其他 发布时间: 01-01 21:01 阅读次数: 0

中小型企业级防火墙部署

防火墙 防火墙是由软件和硬件组成的系统,它处于安全的网络(通常是内部局域网)和不安全的网络(通常是Internet,但不局限于Internet)之间,根据由系统管理员设置的访问控制规则,对数据流进行过滤。   由于防火墙置于两个网络之间,因此从一个网络到另一个网络的所有数据流都要流经防火墙。根据安全策略,防火墙对数据流的处理方式有3种: (1)允许数据流通过; (2)拒绝数据流通过; (3)将这些数据流丢弃。 当数据流被拒绝时,防火墙要向发送者回复一条消息,提示发送者该数据流已被拒绝。当数据流
分类: 其他 发布时间: 01-01 21:00 阅读次数: 0

Dos窗口默认设置修改

1、Win + r 打开运行界面 2、输入cmd (command的缩写.即命令提示符(CMD)) 3、回车后就会进入DOS界面    4、在窗口处单击鼠标右键,选择默认值 5、在控制台属性里选择
分类: 其他 发布时间: 01-01 20:50 阅读次数: 0

vue-cli/Runtime-Compiler和Runtime-Only的区别

在使用vue init创建脚手架的时候会有如下的选择:   Runtime + compiler   Runtime only 1、区别一   通过这两种方法创建的脚手架,区别在于main.js(在src文件夹中)     在Vue实例中,runtime-compiler创建的项目中参数是:       components和template     runtime-only创建的项目中参数为:       render函数 2、组件的渲染过程   组件是如何被渲染到页面中的?     tem
分类: 其他 发布时间: 01-01 20:50 阅读次数: 0

请谈谈写入消息中间件的数据,如何保证不丢失?

本文转载自石杉的架构笔记 (1)背景引入 这篇文章,给大家聊一下写入Kafka的数据该如何保证其不丢失? 看过之前的文章《面试官:消息中间件如何实现每秒几十万的高并发写入》的同学,应该都知道写入Kafka的数据是会落地写入磁盘的。 我们暂且不考虑写磁盘的具体过程,先大致看看下面的图,这代表了Kafka的核心架构原理。 (2)Kafka分布式存储架构 那么现在问题来了,如果每天产生几十TB的数据,难道都写一台机器的磁盘上吗?这明显是不靠谱的啊! 所以说,这里就得考虑数据的分布式存储了,其实关于消
分类: 其他 发布时间: 01-01 20:50 阅读次数: 0

常见的HTTP状态码有哪些?

一、什么是HTTP状态码 ?   当用户在浏览网页的时候,浏览器会返回一个htttp状态码,主要是用来响应浏览器的请求。 二、常见的HTTP状态码有哪些 ?   200 OK     请求正常处理完毕   204 No Content     请求成功处理,没有实体的主体返回 301 Moved Permanently     永久重定向,资源已永久分配新URI   302 Found     临时重定向,资源已临时分配新URI   400 Bad Request     请求报文语法错误或参
分类: 其他 发布时间: 01-01 20:50 阅读次数: 0

jQuery笔记2——jquery选择器

jquery选择器语法 一.什么是选择器语法: 1.就是对DOM对象进行定位的条件,比如根据ID定位,根据标签类型名,根据标签采用样式选择器 2.jQuery中只有三种选择器 (一).基本选择器: 1.【定位条件】:可以根据ID定位,根据标签类型名,根据标签采用样式选择器 2.【使用】: 1).$("#id编号"):代替document.getElementById("id"); 根据ID编号定位对应的DOM对象。让DOM对象保存到一个数组中 并返回,返回这个数组就是【jQuery对象】 2)
分类: 其他 发布时间: 01-01 20:50 阅读次数: 0

vue面试知识总结

1、vue的生命周期钩子函数: , 钩子函数 触发的行为 在此阶段可以做的事情 beforeCreadted vue实例的挂载元素$el和数据对象data都为undefined,还未初始化。 加loading事件 created vue实例的数据对象data有了,$el还没有 结束loading、 请求数据为mounted渲染做准备 beforeMount vue实例的$el和data都初始化了,但还是虚拟的dom,节点具体的data.filter还未替换。 mounted vue实例挂载完成
分类: 其他 发布时间: 01-01 20:50 阅读次数: 0