自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(179)
  • 资源 (9)
  • 论坛 (1)
  • 收藏
  • 关注

原创 Centos升级gcc版本 实测可用

执行以下命令查看当前gcc版本:$ gcc -v输出gcc版本(一般centos的默认版本为4.8.5):gcc version 4.8.5 20150623 (Red Hat 4.8.5-36) (GCC) 升级GCC版本安装开发必备环境:$ yum groupinstall "Development Tools"$ yum install glibc-static libstdc++-staticGCC源码地址为http://ftp.gnu.org/gnu/gcc.

2020-10-19 15:34:10 60

原创 C++ 中 冒号:和双冒号::的简介

冒号(:)的用法(1)表示机构内位域的定义(即该变量占几个bit空间)typedef struct _XXX{unsigned char a:4;unsigned char c;} ; XXX(2)构造函数后面的冒号起分割作用,是类给成员变量赋值的方法,初始化列表,更适用于成员变量的常量const型。所谓构造函数,就是与类同名的函数,它与普通函数的区别在于,它没有返回类型。在构造函数后面紧跟着冒号加初始化列表*,各初始化变量之间以逗号(,)隔开。例如:class myCl

2020-10-14 16:45:12 57

原创 C++ this指针

在 C++ 中,每一个对象都能通过 this 指针来访问自己的地址。this 指针是所有成员函数的隐含参数。因此,在成员函数内部,它可以用来指向调用对象。友元函数没有 this 指针,因为友元不是类的成员。只有成员函数才有 this 指针。下面的实例有助于更好地理解 this 指针的概念:一个指向 C++ 类的指针与指向结构的指针类似,访问指向类的指针的成员,需要使用成员访问运算符 ->,就像访问指向结构的指针一样。与所有的指针一样,您必须在使用指针之前,对指针进行初始化。..

2020-10-14 15:56:59 39

原创 C++ struct介绍 以及class的区别

struct和class的区别struct的定义为了定义结构,您必须使用struct语句。struct 语句定义了一个包含多个成员的新的数据类型,struct 语句的格式如下:struct [structure tag]{ member definition; member definition; ... member definition;} [one or more structure variables]; 举个栗子:struct Books..

2020-10-14 15:24:43 38

原创 一文读懂C++引用

C++引用引用变量是一个别名,也就是说,它是某个已存在变量的另一个名字。一旦把引用初始化为某个变量,就可以使用该引用名称或变量名称来指向变量。C++ 引用 vs 指针引用很容易与指针混淆,它们之间有三个主要的不同:不存在空引用。引用必须连接到一块合法的内存。 一旦引用被初始化为一个对象,就不能被指向到另一个对象。指针可以在任何时候指向到另一个对象。 引用必须在创建时被初始化。指针可以在任何时间被初始化。在C和C++中,指针一般指的是某块内存的地址,通过这个地址,我们可以寻址到这块内存.

2020-10-14 15:07:26 42

原创 C语言指针简介

指针基础首先引用一篇知乎的链接,介绍的挺好的:https://www.zhihu.com/question/24466000/answer/27893272对于程序员来说内存可以简化成这样一种东西:你可以把它想象成一条无限长的纸带。纸带上边有一个个的小格子,每个小格子正好是一字节,里边能够存放一个数字。计算机的工作就是对这些小格子里的数字做处理。虽然你在电脑上能够看视频、听音乐,但这些东西本质上都是存在内存这条纸带上的数字。对于纸带上的每个小格子来说能够采取的操作只有两种「读取」和「写入

2020-10-14 14:35:36 54

原创 C++ 字符串/String类总结

C++字符串C++ 提供了以下两种类型的字符串表示形式:C 风格字符串 C++ 引入的 string 类类型C 风格字符串C风格的字符串起源于 C语言,并在 C++ 中继续得到支持。字符串实际上是使用null字符 '' 终止的一维字符数组。因此,一个以 null 结尾的字符串,包含了组成字符串的字符。下面的声明和初始化创建了一个 "Hello" 字符串。由于在数组的末尾存储了空字符,所以字符数组的大小比单词 "Hello" 的字符数多一个。char greeting[6] = ...

2020-10-14 00:23:56 49

原创 C++ 数组总结

数组C++ 支持数组数据结构,它可以存储一个固定大小的相同类型元素的顺序集合。数组是用来存储一系列数据,但它往往被认为是一系列相同类型的变量。数组的声明并不是声明一个个单独的变量,比如 number0、number1、...、number99,而是声明一个数组变量,比如 numbers,然后使用 numbers[0]、numbers[1]、...、numbers[99]来代表一个个单独的变量。数组中的特定元素可以通过索引访问。所有的数组都是由连续的内存位置组成。最低的地址对应第一个元

2020-10-13 23:39:38 76

原创 C++ 容器 一文读懂~

STL(标准模板库),是目前C++内置支持的library。它的底层利用了C++类模板和函数模板的机制,由三大部分组成:容器、算法和迭代器。这部分主要介绍容器,自己整合,总结的笔记,供参考。STL有六大组件容器 container 算法 algorthm 迭代器 iterator 仿函数 function object 适配器 adaptor 空间配置器 allocator 容器:用来管理某类对象的集合。每一种容器都有其优点和缺点,所以,为了应付程序中的不同需求,STL 准...

2020-09-24 14:22:09 62

转载 C++ 回调函数的简单理解

调用堆栈的参数区有一个地方存着另一个可执行函数(代码)的入口地址(即通过参数传入的函数指针的值),那么自然代码执行到某一个逻辑(比如结束前)可以call那个函数(因为知道了那个函数的地址),只是这个地址是运行时传入的,而不是编译时指定的函数。以下是我机子上可运行通过的例子:#include "stdafx.h"#include <stdio.h>#include <st...

2020-04-24 11:47:27 119

转载 C语言--传值与传指针

我们可能听过C语言中的传值和传指针,在其他语言中,也有传引用一说,那么他们到底有什么区别呢?如果你还不能准确地分辨,就该好好了解一下了。传值我们在初学C语言的时候就被老师教过,下面的方式是无法交换a和b的值的:#include<stdio.h>void swap(int a,int b){ int temp = a; a = b; b = te...

2019-12-10 20:45:01 107

原创 计算机网络--TCP,UDP面试精简总结

计算机网络--TCP,UDP面试精简总结TCP:Transmission Control Protocol 传输控制协议TCP是一种面向连接(连接导向)的、可靠的、基于字节流的运输层(Transport layer)通信协议三次握手与四次挥手图解:上图的名词解释SYN:请求同步。它表示建立连接。TCP规定SYN=1时不能携带数据,但要消耗一个序号, 因此随机选取一个序列号...

2019-09-17 15:25:35 767

转载 树莓派sd卡的拷贝(使用Win32DiskImager简单的方式)

树莓派3-系统备份-利用Win32DiskImager进行系统备份有时候想装win10 、ubuntu 、kodi等等系统玩玩,但是只有一张卡,又想保留现在的系统,即可通过如下方法备份。备份前准备 安装了系统的Micro SD卡 下载安装Win32DiskImager软件 备份步骤 先新建一个空白的.img后缀的文件 插入SD卡,选择对应的SD卡的...

2019-08-15 12:30:51 1217 1

原创 树莓派自动连接WiFi设置

并修改/etc/wpa_supplicant/wpa_supplicant.confnetwork={ ssid="WIFI_ID" psk="WIFI_passwd" key_mgmt=WPA-PSK priority=10}network={ ssid="WIFI_ID2" key_mg...

2019-08-15 12:25:06 968

原创 树莓派 SPI,I2C,UART串行总线介绍

很多人对总线,串行等概念不熟悉特别是SPI,I2C,UART,GPIO等概念。因此我收集了一些资料,用于总结。希望对大家有所帮助。首先看一下树莓派上的接口: GPIO引脚 x 26 UART总线 x 1 SPI总线 x 1 I2C总线 x 1 5V x 2 3.3V x 2 GND x 8 那么什么是GPIO?...

2019-06-09 03:08:50 2254

转载 Arduino串口通信(Serial)

Arduino串口的硬件结构知道单片机运行原理的撸友们都清楚,单片机是基于微控制器(下称MCU)搭建的电子系统。单片机的所有功能其实都是由板载的MCU提供的,Arduino开发板当然也不例外。Arduino(这里单指Uno)的板载MCU为ATmega328P。在ATmega328P内部,实现串口的部件为USART。是Universal Synchronous and Asynch...

2019-06-03 11:24:38 26721

原创 动态代理 看这一篇就够了

动态代理与静态代理本文整理归纳了一些博客的关于动态代理的介绍。Spring AOP中使用了两种动态代理,一种是JDK的动态代理,一种CGLIB的动态代理。JDK的动态代理必须指定接口,这些接口都是已经被代理对象实现了的;而CGLIB代理则不需要指定接口。 静态:由程序员创建代理类或特定工具自动生成源代码再对其编译。在程序运行前代理类的.class文件就已经存在了。 ...

2019-04-26 13:19:08 259

原创 java基础知识总结(精简)

以下是java基础的精摘以及总结:Object类中的方法1.equals();2.hashcode();3.clone();4.toString(),notify(),notifyAll(),wait();5.finalize()Java中实现序列化的两种方式1.实现Serializable接口。序列化的时候的一个关键字:transient(临时的)...

2019-04-26 11:02:39 390

原创 链表常见算法题总结

https://github.com/lxsnwu/Algorithm/tree/master/%E9%93%BE%E8%A1%A8

2019-04-05 22:18:58 285

原创 二叉树常见算法题总结

https://github.com/lxsnwu/Algorithm/tree/master/%E4%BA%8C%E5%8F%89%E6%A0%91

2019-04-05 22:18:15 343

原创 字符串常见算法题总结

https://github.com/lxsnwu/Algorithm/tree/master/%E5%AD%97%E7%AC%A6%E4%B8%B2

2019-04-05 22:17:25 414

原创 一图搞定算法常用数据结构的方法

放大饮用更佳。 如有错误或者建议请提出~

2019-03-29 10:21:25 222

转载 WIFI 2.4G及5G信道一览表

目前主流的无线WIFI网络设备802.11a/b/g/n/ac:传统 802.11•1997年发布•两个原始数据率:1Mbps 和 2Mbps•跳频展频 (FHSS)或直接序列展布频谱(DSSS)•三个不重叠的信道中,工业、科学、医学 (ISM) 频段频率为2.4GHz•最初定义的载波侦听多点接入/避免冲撞 (CSMA-CA)802.11a•1999年发布•...

2019-03-28 00:02:46 78423 3

转载 图解 负载均衡算法及分类

什么是负载均衡? 百度词条里的解释是:负载均衡,英文叫Load Balance,意思就是将请求或者数据分摊到多个操作单元上进行执行,共同完成工作任务。它的目的就通过调度集群,达到最佳化资源使用,最大化吞吐率,最小化响应时间,避免单点过载的问题。负载均衡分类 负载均衡可以根据网络协议的层数进行分类,我们这里以ISO模型为准,从下到上分为:物理层,数据链路层,网络层,传...

2019-03-24 15:36:53 5543

原创 volatile、synchronized两者的区别联系

Volatile、synchronized两者的区别联系1.volatile本质是在告诉jvm当前变量在寄存器(工作内存)中的值是不确定的,需要从主存中读取;synchronized则是锁定当前变量,只有当前线程可以访问该变量,其他线程被阻塞住。2.volatile仅能使用在变量级别;synchronized则可以使用在变量、方法、和类级别的。3.volatile仅能实现变量的修改可见...

2019-03-17 12:26:05 123

原创 reentrantLock与synchronized的区别

ReentrantLock与sync有什么区别主要的区别从一下几个方面说:1、用锁的灵活性 一个是程序员不能认为控制的,一个是程序员可以人为控制,中断、释放。可以设置尝试获取锁的时间等,ReentrantLock灵活得多.但是也带来了不安全的因素 因为锁每次都要人为释放 不想sync自己会释放2、可以不可以获取锁的当前状态 synchronized无法判断是否获...

2019-03-17 12:24:40 104

原创 阻塞队列与普通队列的区别

阻塞队列与普通队列的区别 阻塞队列与普通队列的区别在于,当队列是空的时,从队列中获取元素的操作将会被阻塞,或者当队列是满时,往队列里添加元素的操作会被阻塞。试图从空的阻塞队列中获取元素的线程将会被阻塞,直到其他的线程往空的队列插入新的元素。同样,试图往已满的阻塞队列中添加新元素的线程同样也会被阻塞,直到其他的线程使队列重新变得空闲起来,如从队列中移除一个或者多个元素,或者完全清空队列....

2019-03-17 12:21:33 676

原创 红黑树,B树,B+树 本质区别

B树,B+树,红黑树使用场景区别红黑树其实就是平衡树的一种,复杂的定义和规则,最后都是为了保证树的平衡性。 因为树的查找性能取决于树的高度,让树尽可能平衡,就是为了降低树的高度。B树常用在文件系统的索引上,那为什么文件索引喜欢用B树而不是红黑树呢? 因为文件系统和数据库的索引都是存在硬盘上的,并且如果数据量大的话,不一定能一次性加载到内存。 所以一棵树都...

2019-03-17 02:16:59 1980

转载 图文 红黑树,B树,B+树 本质区别及应用场景

小史是一个应届生,虽然学的是电子专业,但是自己业余时间看了很多互联网与编程方面的书,一心想进 BAT 互联网公司。话说两个多月前,小史通过了 A 厂的一面,两个多月后的今天,小史终于等到了 A 厂的二面。在简单的自我介绍后,面试官看了看小史的简历,开始发问了。面试现场小史:没问题,这个项目前端用的 React+Webpack,后端用的 Nginx+Spr...

2019-03-17 02:14:42 4798 9

转载 Mysql高性能优化总结

MySQL 对于很多 Linux 从业者而言,是一个非常棘手的问题,多数情况都是因为对数据库出现问题的情况和处理思路不清晰。 在进行 MySQL 的优化之前必须要了解的就是 MySQL 的查询过程,很多的查询优化工作实际上就是遵循一些原则让 MySQL 的优化器能够按照预想的合理方式运行而已。MySQL 查询过程优化的哲学注:优化有风险,修改需谨慎。优化可能带来的...

2019-03-17 01:42:59 117

转载 快速失败(fail-fast)安全失败(fail-safe)

fail-fast是如何产生的即,当多个线程对同一个集合进行操作的时候,某线程访问集合的过程中,该集合的内容被其他线程所改变(即其它线程通过add、remove、clear等方法,改变了modCount的值);这时,就会抛出ConcurrentModificationException异常,产生fail-fast事件。fail-fast机制,是一种错误检测机制。它只能被用来检测错误,因为J...

2019-03-16 23:25:13 120

转载 AtomicInteger与LongAdder的区别

LongAdder与AtomicInteger区别但是这个CAS有没有问题呢?肯定是有的。比如说大量的线程同时并发修改一个AtomicInteger,可能有很多线程会不停的自旋,进入一个无限重复的循环中。Java 8推出了一个新的类,LongAdder,他就是尝试使用分段CAS以及自动分段迁移的方式来大幅度提升多线程高并发执行CAS操作的性能! 在LongAdder的底层实...

2019-03-15 09:53:42 1063

原创 图文springMVC拦截器实现原理

在介绍SpringMVC拦截器前,先介绍一下SpringMVC的流程。1、用户发送请求,经过前端控制器Dispacherservlet(Controller的核心)将url交给处理器映射器HandlerMapping处理2、处理器映射器HandlerMapping处理url,返回HandlerExecutionChain(可能包含拦截器,一定包含自定义的Controller(han...

2019-03-14 23:34:05 5594 2

转载 Spring常用注解简述

@Component标注一个普通的spring Bean类@Component可以代替@Repository、@Service、@Controller,因为这三个注解是被@Component标注的。但尽量使用对应组件注解的类替换@Component注解,在spring未来的版本中,@Controller,@Service,@Repository会携带更多语义。并且便于开发和维护。@C...

2019-03-14 16:06:14 799

原创 java 单例模式

单例模式单例模式(Singleton Pattern)是 Java 中最简单的设计模式之一。这种类型的设计模式属于创建型模式,它提供了一种创建对象的最佳方式。这种模式涉及到一个单一的类,该类负责创建自己的对象,同时确保只有单个对象被创建。这个类提供了一种访问其唯一的对象的方式,可以直接访问,不需要实例化该类的对象。注意:1、单例类只能有一个实例。2、单例类必须自己创建自己的...

2019-03-14 15:15:28 92

转载 Redis缓存雪崩与解决方案

什么是缓存雪崩?服务器雪崩的场景与解决方案--转自头条号 优知学院什么是应用服务雪崩雪崩问题分布式系统都存在这样一个问题,由于网络的不稳定性,决定了任何一个服务的可用性都不是 100% 的。当网络不稳定的时候,作为服务的提供者,自身可能会被拖死,导致服务调用者阻塞,最终可能引发雪崩连锁效应。缓存雪崩当缓存服务器重启或者大量缓存集中在某一个时间段失效,这样在失效的时候,也...

2019-03-13 23:49:28 4763

原创 java高并发8.2 J.U.C--BlockingQueue阻塞队列,ForkJoin

ForkJoin ForkJoin是Java7提供的一个并行执行任务的框架,是把大任务分割成若干个小任务,待小任务完成后将结果汇总成大任务结果的框架。主要采用的是工作窃取算法,工作窃取算法是指某个线程从其他队列里窃取任务来执行。 在窃取过程中两个线程会访问同一个队列,为了减少窃取任务线程和被窃取任务线程之间的竞争,通常我们会使用双端队列来实现工作窃取算法。被窃取任务的线程永远从...

2019-03-10 13:43:00 290

原创 java高并发8.1 J.U.C-- FutureTask

FutureTaskFutureTask是J.U.C中的类,是一个可删除的异步计算类。这个类提供了Future接口的的基本实现,使用相关方法启动和取消计算,查询计算是否完成,并检索计算结果。只有在计算完成时才能使用get方法检索结果;如果计算尚未完成,get方法将会阻塞。一旦计算完成,计算就不能重新启动或取消(除非使用runAndReset方法调用计算)。Runnable与Callab...

2019-03-10 13:36:19 81

原创 java高并发7.2 AQS-- ReentrantLock、ReentrantReadWriteLock、StempedLock

ReentrantLockjava中有两类锁,一类是Synchronized,而另一类就是J.U.C中提供的锁。ReentrantLock与Synchronized都是可重入锁,本质上都是lock与unlock的操作。接下来我们介绍三种J.U.C中的锁(ReentrantLock、ReentrantReadWriteLock、tempedLock),其中 ReentrantLock使用sy...

2019-03-10 13:32:54 123

原创 java高并发7.1 AQS--CountDownLatch, Semaphore, CyclicBarrier

文章包含了: AQS简介 AQS设计思想 AQS的大致实现思路 AQS组件:CountDownLatch AQS组件:Semaphore AQS组件:CyclicBarrier AQS简介AQS全名:AbstractQueuedSynchronizer,是并发容器J.U.C(java.lang.concurrent)下locks包内的...

2019-03-10 12:54:55 126

redis3.0.5-windows

redis3.0.5-windows,具体安装步骤请看博主的博文介绍

2019-01-08

redis3.0-windows

redis3.0-windows.具体安装步骤请转至博主博客

2019-01-08

Git-2.20.1-64-bit.exe

Git是一个开源的分布式版本控制系统,可以有效、高速地处理从很小到非常大的项目版本管理。

2019-01-05

数据库系统概论 第5版

数据库系统概论 第5版.

2018-12-15

计算机网络(第7版)-谢希仁

计算机网络(第7版)-谢希仁.

2018-12-15

Effective MySQL之SQL语句最优化

Effective MySQL之SQL语句最优化.

2018-12-15

《图解HTTP》完整彩色版

《图解HTTP》完整彩色版

2018-12-15

《操作系统精髓与设计原理(原书第6版)》PDF中文版

《操作系统精髓与设计原理(原书第6版)》PDF中文版

2018-12-15

开涛 跟我学spring3 pdf+源码

跟我学spring3 pdf+源码 spring3(1-7).pdf spring3(8-13).pdf spring3-源码.rar

2018-12-15

我有11个十六进制的数,如何把他们拼到一起?

发表于 2019-06-30 最后回复 2019-11-30

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人 TA的粉丝

提示
确定要删除当前文章?
取消 删除