3 哈哈哈呀啦啦啦

尚未进行身份认证

我要认证

暂无相关简介

等级
TA的排名 5w+

Java锁消除

概述锁消除是Java虚拟机在JIT编译是,通过对运行上下文的扫描,去除不可能存在共享资源竞争的锁,通过锁消除,可以节省毫无意义的请求锁时间。实验看如下代码:package com.winwill.lock;/** * @author qifuguang * @date 15/6/5 14:11 */public class TestLockEliminate { public static String getString(String s1, String s2) {

2020-08-24 11:28:15

Java之重写Object类的toString方法

package com.xiao.toString; /** * @author 笑笑 * @Date 2018年4月14日下午10:16:36 * */public class Student { private String name; private int age; //空参构造 public Student() { } //有参构造 public Student(String name, int age) { this.name = name; thi

2020-07-27 05:23:41

Redis为什么是单线程、及高并发快的3大原因详解

Redis的高并发和快速原因1.redis是基于内存的,内存的读写速度非常快;2.redis是单线程的,省去了很多上下文切换线程的时间;3.redis使用多路复用技术,可以处理并发的连接。非阻塞IO 内部实现采用epoll,采用了epoll+自己实现的简单的事件框架。epoll中的读、写、关闭、连接都转化成了事件,然后利用epoll的多路复用特性,绝不在io上浪费一点时间。下面重点介绍单线程设计和IO多路复用核心设计快的原因。为什么Redis是单线程的1.官方答案因为Redis是基于内存的操作

2020-07-13 13:32:43

数据结构中的各种树

数据结构中为了存储和查找的方便,用各种树结构来存储文件,本章就浅谈一下各种树的表示方法、特点及各自的用途,本章设计的树结构包括:二叉查找树(二叉排序树)、平衡二叉树(AVL树)、红黑树、B-树、B+树、字典树(trie树)、后缀树、广义后缀树。1、二叉查找树(二叉排序树)二叉查找树是一种动态查找表(图a),具有这些性质:(1)若它的左子树不为空,则左子树上的所有节点的值都小于它的根节点的值;(2)若它的右子树不为空,则右子树上所有节点的值都大于它的根节点的值;(3)其他的左右子树也分别为二叉查找

2020-07-06 12:09:16

Mysql 隔离级别及实现(MVCC)

Mysql 隔离级别及实现脏读(Drity Read):某个事务已更新一份数据,另一个事务在此时读取了同一份数据,由于某些原因,前一个RollBack了操作,则后一个事务所读取的数据就会是不正确的。不可重复读(Non-repeatable read):在一个事务的两次查询之中数据不一致,这可能是两次查询过程中间插入了一个事务更新的原有的数据。幻读(Phantom Read):在一个事务的两次查询中数据笔数不一致,例如有一个事务查询了几列(Row)数据,而另一个事务却在此时插入了新的几列数据,先前的事务

2020-07-05 01:56:48

为什么要用异步消息队列

什么是消息队列?所谓消息队列,就是一个以队列数据结构为基础的一个实体,这个实体是真实存在的,比如程序中的数组,数据库中的表,或者redis等等,都可以。首先我们说说为什么要使用队列,什么情况下才会使用队列?我的理解是,那些实时性要求不高,且比较耗时的任务,是队列的最佳应用场景。比如说我在某网站注册一个账号,当我的信息入库注册成功后,网站需要发送一封激活邮件,让我激活账号,而这个发邮件的操作并...

2020-04-15 03:43:28

点赞模块设计 - Redis缓存 + 定时写入数据库实现高性能点赞功能

本文基于 SpringCloud, 用户发起点赞、...

2020-04-15 03:32:41

粒计算

粒计算 (GrC,Granular Computing) 是一个新兴的、多学科交叉的研究领域,是当前计算智能领域中模拟人类思维和解决复杂问题的新方法,它涵盖了所有有关粒度的理论、方法和技术。粒计算起源于人工智能、机器学习、数据挖掘与智能系统等领域,从更高层面对这些领域进行概括分析,它强调对现实世界多层次与多视角的理解与描述,从而得到问题的粒结构表示。粒计算将结构化思维方式、结构化问题求解与结构化信...

2020-04-12 04:15:52

HATEOAS

简介HATEOAS(Hypermedia as the engine of application state)是 REST 架构风格中最复杂的约束,也是构建成熟 REST 服务的核心。它的重要性在于打破了客户端和服务器之间严格的契约,使得客户端可以更加智能和自适应,而 REST 服务本身的演化和更新也变得更加容易。在介绍 HATEOAS 之前,先介绍一下 Richardson 提出的 RES...

2020-04-11 19:16:59

springMVC视图解析原理学习

SpringMVC如何解析视图概述不论控制器返回一个String,ModelAndView,View都会转换为ModelAndView对象,由视图解析器解析视图,然后,进行页面的跳转。视...

2020-04-11 18:41:42

System.out::println

在不经意间, 我们会看到这样的代码 ...

2020-04-11 10:28:37

RAFT算法详解

RAFT算法详解 转载 ...

2020-04-05 16:27:05

详解native方法的使用

目录结构:关于native关键字使用native关键字使用步骤案例编写.java文件编译.java文件获得.h文件编写hello.cpp文件部署hello.dll文件运行HelloWorld....

2020-04-04 13:33:13

为什么说ArrayList是线程不安全的?

一.概述对于ArrayList,相信大家并不陌生...

2020-04-02 00:49:39

Spring---Bean的作用域和生命周期

前言1. bean的作用域1.1 singleton——唯一 bean 实例1.2 prototype——每次请求都会创建一个新的 bean 实例1.3 request——每一次HTT...

2020-04-01 04:16:06

Redis实现开发者头条页面点赞功能

开发者头条是一个资源丰富的程序猿学习网站。当网站发...

2020-04-01 04:12:02

java日志使用

 写在前面 log4j需要导入的包 添加配置文件 建立类文件+主函数 修改配置文件,将日志输出到console 设定输出的格式 将日志输出到文本文件 每一小时、每天、每...

2020-03-30 14:01:39

C++ 函数参数

实参与形参类型不匹配时,实参自动转化为形参类型return语句 返回数据的类型与函数类型不匹配时,自动转化为函数的类型函数声明 事先通知编译系统,可以不写形参名example:float add(float)技巧编程时把main函数写到最前面,每次需调用函数时都要写函数原型来声明函数example:void swap(int,int)参数指针作为函数参数声明 void swap(...

2020-03-27 17:05:03

jsp和java前后台的交互

后台返回前台1,java生成infoStuString private String infoStuString; public String getInfoStuString() { return infoStuString; } public void setInfoS...

2020-03-26 01:26:00

VS检测内存泄漏,定位泄漏代码位置方法

1、什么是内存泄漏?内存泄漏指的是在程序里动态申请的内存在使用完后,没有进行释放,导致这部分内存没有被系统回收,久而久之,可能导致程序内存不断增大,系统内存不足……引发一系列灾难性后果;(关...

2020-03-25 20:48:28

查看更多

勋章 我的勋章
  • 阅读者勋章Lv2
    阅读者勋章Lv2
    授予在CSDN APP累计阅读博文达到7天的你,是你的坚持与努力,使你超越了昨天的自己。
  • 持之以恒
    持之以恒
    授予每个自然月内发布4篇或4篇以上原创或翻译IT博文的用户。不积跬步无以至千里,不积小流无以成江海,程序人生的精彩需要坚持不懈地积累!
  • 1024勋章
    1024勋章
    #1024程序员节#活动勋章,当日发布原创博客即可获得
  • 勤写标兵Lv4
    勤写标兵Lv4
    授予每个自然周发布9篇以上(包括9篇)原创IT博文的用户。本勋章将于次周周三上午根据用户上周的博文发布情况由系统自动颁发。