- 博客(30)
- 收藏
- 关注
原创 Go-并发中的ABA问题及解决方法
CAS 操作通过比较共享变量当前值和预期值来决定是否更新为新值。线程读取到某个共享变量的值为 A;在操作前,该值被另外的线程改为 B,随后又被改回 A;由于 CAS 只检查当前值是否与初始值 A 一致,因此 CAS 操作认为值未发生变化,但实际上,该值已被改动过。由于这种缺陷,ABA 问题可能导致程序逻辑错误。版本号机制:绑定版本号和值一起更新,常见于简单的原子操作场景。链表节点的唯一标识:用于队列、栈等基于链表的无锁数据结构。锁机制:在复杂逻辑或低并发需求时使用锁来避免 CAS 的问题。
2025-02-07 11:14:13
656
原创 java 使用Deque实现栈
双端队列Deque(double ended queue) Deque que = new LinkedList(); 栈式操作: push(e) pop()//弹出栈顶 peek()//查看栈顶
2021-02-24 00:11:53
1360
1
原创 Java数据类型
### 1.基本类型(primitive type) 一位(bit)就是一个2进制数,0/1 1字节=8bit 一个16进制数可由4个二进制位表示 2个16进制数占一个字节 数值类型 整数类型 1.byte,1个字节,-128~127 2.short,2个字节,-32768~32767 3.int,4个字节,-2147483648~2147483647 4.long,8个字节,-9223372036854775808~9223372036854775807 浮点类型 1.float,4个字节 2.do
2021-01-17 20:01:16
215
原创 简单使用Scanner类实现输入和输出
## 简单使用Scanner类实现输入和输出 Scanner scan = new Scanner(System.in); //传入的参数表示扫描控制台接受数据 scan.close(); //控制输入输出的对象记得最后要关闭 scan.next***()等方法一般用来获取输入的数据; scan.hasNext***()等方法一般用来判断是否还有数据输入; 简单测试:判断并获取整数和浮点数 Scanner scan = new Scanner(System.in); int i=0; float f=0
2021-01-17 19:26:33
1118
原创 Java运算符
# 关系运算符 ```instanceof``` instanceof 严格来说是Java中的一个双目运算符,用来测试一个对象是否为一个类的实例 这里详细介绍了instanceof运算符的用法和几种情况 位运算符: &(与) |(或) ^(抑或) ~(取反) >>(右移) <<(左移) >>>(不带符号右移) byte a=0b1001; byte b=0b0110; System.out.println(a);//9 System.out.prin
2021-01-17 19:26:21
145
原创 linux用户管理相关命令
用户组的概念:linux使用组管理用户,一个用户至少属于一个组,一个用户也可以属于多个组 家目录:/home目录下有各个用户对应的家目录,用户登录后自动进入到自己的家目录下 添加用户/设置密码 **useradd 用户名 ** 执行命令之后会自动创建一个与用户名同名的组(组管理的思想) useradd -d 目录 用户名 指定家目录创建用户 useradd -g 用户组名 用户名 指定用户组创建新用户 passwd 用户名 给指定用户设置或修改密码 删除用户 userdel 用户名 保留了家目录删除用户 u
2020-11-17 10:27:31
275
原创 2020-11-11查看Linux内核
Linux 查看内核版本 查看系统version信息文件 cat /proc/version 使用uname命令显示系统信息 uname -a Linux 查看系统版本 查看版本发型文件(适用于redhad系) cat /etc/redhat-release
2020-11-15 17:23:23
115
原创 typecho-服务器重启后页面502问题
php-fpm问题,重新启动就好了 启动 systemctl start php-fpm 停止 systemctl stop php-fpm 重启 systemctl restart php-fpm
2020-11-15 12:14:26
838
原创 JSON概述
# JSON概述 一个json对象长什么样 var jsonObj = { "name":"runoob", "alexa":10000, "site":null }; {}花括号书写,里面包含多个key:value键值对,每个元素用逗号分隔 **数据类型:**其中key必须是字符串,value 可以是合法的 JSON 数据类型(字符串, 数字, 对象, 数组, 布尔值或 null)。 json元素的值可以是数组。数组的元素也可以是json对象,可以相互嵌套 访问JSON对象内的元素 用点号
2020-11-05 20:02:49
256
原创 CSS-三种声明方式、写法
# CSS-三种声明方式、写法 声明方式 行内样式:写在标签属性style=""里面 内部样式:写在<head>标签里面,用标签<style rel="stylesheet" type="text/css"></style>包裹 外部样式:写在外部*.css文档里面,在html文档的<head>标签里面用<link rel="stylesheet" type="text/css" href="外部.css文件路径"/>标签声明 css样式写法:
2020-11-05 20:02:18
1649
原创 HTML<;meta>;标签学习
# HTML标签学习 概述 meta是描述数据的信息,也就是元数据 元素提供有关页面的元信息(例如:对搜索引擎和更新频度的关键字或描述) 元数据以"名称:值”的形式传递 content属性提供值,名称由name属性或者http-equiv属性提供 例如: content-type: text/html charset:iso-8859-1 expires:31 Dec 2008 必需属性 值 描述 content 字符串 定义与 http-equiv 或 name 属性相关的元信息 h
2020-11-05 20:01:47
362
原创 HTML常见的属性以及一些标签的属性
## 常见的属性 id:元素的唯一id,经常用来寻找和定位某一个标签 class:为元素规定一个或多个类名(类名从样式表引入) style:规定元素的行内样式 title:描述元素的额外信息(作为工具条使用),鼠标放在元素上面会显示 标签 图片<image>和视频<video> <img src="图片地址" alt="加载出错时默认显示的文字"> <video src="视频地址" controls="controls"></video>
2020-11-05 20:01:16
454
原创 HTML基础-基本结构、列表、表格
# 基本知识 HTML基本结构 <!DOCTYPE html> <html> <head> <!--文档的标题、css样式、以及一些数据等等--> <meta charset="utf-8"> <title> <!--网页标题--> </title> </head> <body> <!--网页主要内
2020-11-05 20:00:45
265
原创 tomcat简单使用
tomcat简单使用 进入apache-tomcat-8.0.9/webapps/目录,可以在这里存放资源,通过rz将自己写好网页放在这里,外部可以通过socket+文件目录的方式访问 例如https://11.11.11.11:8080/myapp.html,这里的myapp.html文件就在webapps/下 修改tomcat默认端口 tomcat默认占用8080端口,可以找到conf目录下的server.xml文件,修改默认端口,如图,vi server.xml编辑文档,已修改为80端口 .
2020-11-05 20:00:14
219
原创 腾讯云服务器使用(Linux)
@[toc] 1. 安装Java JDK yum install java-1.8.0-openjdk* -y 安装后使用java -version检查是否成功 2. Xshell 显示说明 * 蓝色代表文件夹 * 白色代表文件,不可执行文件 * 红色代表压缩包 * 浅蓝色是快捷方式/软链接 * 经常用到的目录:etc安装配置地方 usr opt 3. 基本操作命令 cd / 相当于系统盘目录 cd ../ 返回上一级,返回多级就跟多个../ ls -a 显示当
2020-11-05 19:59:34
665
原创 关于Java
## Java三大版本 JavaSE 标准版(桌面程序,控制台开发…) JavaME 嵌入式开发(手机,小家电) JavaEE E企业级开发(web端,服务器开发) JDK:java development kit JRE:java runtime environment JVM:java virtual machine (由上往下包含关系) Java程序运行机制 *.java文件经Java编译器编译成.class文件 *.class文件经过类装载器,字节码校验器,最后经过解释器,交给操
2020-11-05 19:53:06
144
原创 线性表-顺序表
# 顺序表 逻辑相邻的元素和在物理结构上也是相邻的 一般使用数组来存储顺序表,数组可以是多维,顺序表只能是一维的 sizeof(Element Type)计算某个数据类型的存储空间 可以使用Loc(A)+index*sizeof(Element Type)定位元素 静态数组 //静态分配数组 #define ElementType int #define Maxsize 50 typedef struct { ElementType data[Maxsize]; int length;
2020-11-04 18:32:19
161
原创 2020-10-22 shell.D1
linux命令 shell.1 shell 用户通过shell提供的界面与操作系统内核进行交互 bash是linux shell的一种,Bourne Again Shell(/bin/bash),免费! #!一个约定,告诉系统用什么解释器来运行命令 #!/bin/bash 使用bash解释器 执行.sh文件运行shell脚本 创建文件test.sh写入一些命令 chmod -x ./test.sh 使文件具有执行权限 ./test.sh 执行脚本文件 ./写的原因:执行脚本命令的时候(概括来
2020-10-22 20:43:18
137
原创 2020-10-16 Linux目录结构 sql8
Linux Linux思想:一切皆是文件(硬件设备,媒体等等) Linux目录结构是树状目录结构,“/”是根目录 home 用户账户文件,以用户的账号名生成相应的文件夹 etc 系统管理所需要的配置文件和子目录 usr 用户的很多应用程序和文件,类似windows里的program files usr/local 另一个主机额外安装的软件目录 boot 启动的核心文件 media 挂载的设备(U盘、光驱等) mnt 让用户临时挂载别的文件系统 var 各种日志文件等不断变化的文件 bin 指令文件 sb
2020-10-16 23:34:22
185
原创 2020-10-14
Linux命令 使用man 命令可以查看各个命令的使用文档 man mkdir pwd显示当前目录绝对路径 mkdir -m xxx(文件权限) -p(递归地创建出所有目录) mkdir -m 777 -p test1/test2 LeetCode - 6 Z字型变换 一开始使用char类型的二维数组,将字符串按照“Z”字型储存在数组中,最后逐个去除组成字符串 看了官方题解后,将二维数组替换为StringBuilder列表,大大简化了代码 ...
2020-10-15 11:18:13
136
原创 2020-10-13
linux命令 把 textfile1 的文档内容加上行号后输入 textfile2 这个文档里 cat -n textfile1 > textfile2 sql实战5 题目 查找所有员工的last_name和first_name以及对应部门编号dept_no,也包括暂时没有分配具体部门的员工(请注意输出描述里各个列的前后顺序) CREATE TABLE `dept_emp` ( `emp_no` int(11) NOT NULL, `dept_no` char(4) NOT NULL, `from_
2020-10-13 23:26:26
156
原创 2020-10-12
linux命令 yum基本操作 yum check-update检查所有可更新的软件 yum install 包名安装指定软件 yum update 包名更新指定软件 yum update更新所有软件 yum remove 包名删除指定软件 yum list查看所有可以安装的软件 yum search 关键词查询某个已安装的软件 sql实战3 题目 查找各个部门当前(dept_manager.to_date=‘9999-01-01’)领导当前(salaries.to_date=‘9999-01-01’)薪水
2020-10-12 09:41:46
124
原创 简单使用Scanner类
简单使用Scanner类实现输入和输出 Scanner scan = new Scanner(System.in); //传入的参数表示扫描控制台接受数据 scan.close(); //控制输入输出的对象记得最后要关闭 scan.next***()等方法一般用来获取输入的数据; scan.hasNext***()等方法一般用来判断是否还有数据输入; 简单测试:判断并获取整数和浮点数 Scanner scan = new Scanner(System.in); int i=0; float f=0.0f
2020-07-23 23:10:25
206
原创 腾讯云服务器(centos)基础&tomcat简单使用
文章目录1. 安装Java JDK2. Xshell 显示说明3. 基本操作命令4. rzsz5. tomcat简单使用 1. 安装Java JDK yum install java-1.8.0-openjdk* -y 安装后使用java -version检查是否成功 2. Xshell 显示说明 * 蓝色代表文件夹 * 白色代表文件,不可执行文件 * 红色代表压缩包 * 浅蓝色是快捷方式/软链接 * 经常用到的目录:etc安装配置地方 usr opt 3.
2020-07-23 21:23:49
434
原创 HTML基础02-常见属性、标签、样式表
常见的属性 id:元素的唯一id class:为元素规定一个或多个类名(类名从样式表引入) style:规定元素的行内样式 title:描述元素的额外信息(作为工具条使用),鼠标放在元素上面会显示 常见标签 图片< image >和视频< video > <img src="图片地址" alt="加载出错时默认显示的文字"> <video src="视频地址" controls="controls"></video> < div >
2020-07-23 18:58:36
331
原创 HTML基础01
基本知识 HTML基本结构 <!DOCTYPE html> <html> <head> <!--文档的标题、css样式、以及一些数据等等--> <meta charset="utf-8"> <title> <!--网页标题--> </title> </head> <body> <!--网页主要内容-
2020-07-23 15:37:48
148
原创 Java数据类型
1.基本类型(primitive type) 一位(bit)就是一个2进制数,0/1 1字节=8bit 一个16进制数可由4个二进制位表示 2个16进制数占一个字节 数值类型 整数类型 1.byte,1个字节,-128~127 2.short,2个字节,-32768~32767 3.int,4个字节,-2147483648~2147483647 4.long,8个字节,-9223372036854775808~9223372036854775807 浮点类型 1.float,4个字节 2.double
2020-07-18 13:25:25
235
原创 关于Java
关于Java Java三大版本 JavaSE 标准版(桌面程序,控制台开发…) JavaME 嵌入式开发(手机,小家电) JavaEE E企业级开发(web端,服务器开发) JDK:java development kit JRE:java runtime environment JVM:java virtual machine (由上往下包含关系) Java程序运行机制 *.java文件经Java编译器编译成.class文件 *.class文件经过类装载器,字节码校验器,最后经过解释器
2020-07-18 11:54:06
155
原创 线性表-顺序表
数据结构-顺序表-线性表线性表静态数组动态数组顺序表的操作插入操作删除操作查找操作 线性表 逻辑相邻的元素和在物理结构上也是相邻的 一般使用数组来存储顺序表,数组可以是多维,顺序表只能是一维的 sizeof(Element Type)计算某个数据类型的存储空间 可以使用Loc(A)+index*sizeof(Element Type)定位元素 静态数组 //静态分配数组 #define ElementType int #define Maxsize 50 typedef struct { Ele
2020-07-12 16:21:17
173
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅