- 博客(242)
- 资源 (11)
- 收藏
- 关注
原创 Linux基础学习笔记(十三)——文件的格式化处理
上一篇博客完成了Linux中管道命令的梳理,这篇博客梳理一下文件的格式化输出处理,对应《鸟哥的Linux私房菜》中第11章第4节。
2022-09-03 14:33:22
551
1
原创 Linux基础学习笔记(十二)——管道命令
上一篇博客简述了一下Linux中的输入输出重定向,这篇博客总结一下Linux中的管道命令,为后面的文件格式化,shell学习做一个基础,对应《鸟哥的Linux私房菜》第十章10.6的内容起于管道命令,基于管道命令总结了一堆结合管道命令的实例httpshttpshttpshttpshttpshttpshttpshttpshttpshttpshttpshttpshttps。...
2022-07-31 15:16:30
1702
原创 Linux基础学习笔记(十一)——数据流重定向
上一篇博客简述了一下正则表达式,基本的在Linux的平台算是够用了,后续会根据这个引申总结一下Java中的正则表达式。这一篇博客总结一下linux命令中的数据流重定向和管道命令,为后续的shell学习打下基础。对应《鸟哥的Linux私房菜》一书中的第十章10.5的内容。所谓的数据流重定向,即将Linux的命令执行结果重定向到其他地方,因为默认这些命令正确异常执行结果,都是直接输出在屏幕上的。《鸟哥的Linux私房菜》一书中,有一张图,还是比较清晰的。标准输出指的是指令执行系统传回的正常信息,标准错误输出指
2022-07-09 17:59:19
311
原创 Linux基础学习笔记(十)——正则表达式
走到目前为止,离shell的学习越来越近了,还剩下几个基础内容,这篇博客打算总结一下正则表达式,对应于《鸟哥的Linux私房菜》第十一章的内容,这篇博客也会涉及grep命令和sed命令,但是关于什么是正则表达式,这里不做介绍grep命令linux中使用的比较广泛的一条命令,能以行为单位过滤文本数据。实例除了这些基础用法,还有一些进阶的用法实例grep在数据中查找一个字符的时候,是以"整行"为单位来进行数据的读取。vi创建一个文件,用于总结正则表达式特定字符串特定字符串,其实也是一种正则表达式[
2022-07-03 16:22:59
425
原创 Linux基础学习笔记(九)——vi和vim
前面基本总结了Linux中一些文件的各种操作,后面开始为shell脚本的学习做好准备,这里开始总结vi和vim的内容,依旧参照《鸟哥的Linux私房菜》一书中的内容,本篇博客对应这本书中第九章的学习内容vi和vim都有三种模式——一般指令模式,编辑模式,命令行模式三种模式的转换方式如上图所示一般指令模式:我们vi指令打开文件,就进入了命令模式,在这个模式中,可以通过上下键来移动光标,可以删除字符或删除整行,也可以复制黏贴文件内容,同时通过相关按钮可以退出vi和vim编辑模式:输入i,a,o按钮,或者ins
2022-06-26 15:57:07
319
原创 Linux基础学习笔记(八)——文件的压缩和打包
上一篇博客总结了文件的查找,这篇博客继续开始文件的压缩和打包的相关学习总结,对应《鸟哥的Linux私房菜》一书的第八章的部分内容在Linux的系统中,压缩文件的扩展名大多是:不同的压缩文件名称对应的含义如下其中.tar结尾的文件,只是程序打包(将很多文件归档)的数据,并没有压缩过针对.Z,.zip和.gz压缩文件的一组命令实例上述实例的最后,发现tmp文件夹下没有了原先的services文件夹,gzip在压缩的时候,在预设的情况下原本的文件不会被保留,直接会被压缩成.gz文件,源文件不再存在。解压的
2022-06-19 11:02:48
360
原创 Linux基础学习笔记(七)——文件的查找
前几篇博客算是初步总结完成了Linux中文件权限的学习,这篇开始学习一下Linux中偏数据处理的一些命令,文件查找开始。依旧参考《鸟哥的Linux私房菜》关于指令与文件的搜寻,指的是如何在Linux中查找文件,这个对应于《鸟哥的Linux私房菜》第六章第5节的相关内容,这里做一些总结和梳理。which命令可以查找指定的指令在哪儿。但是,which命令,是根据系统变量PATH指定的路径进行文件查找。也就是说which命令只能查找PATH指定的路径,其他文件夹下的文件,which无法查找,同时which还无
2022-06-12 15:51:48
807
原创 Linux基础学习笔记(六)——文件的默认和特殊权限
关于Linux中文件的权限,依旧没有结束,不过这篇学习笔记应该是关于Linux的文件权限总结的最后一篇,从Linux文件的基本权限,到Linux文件的ACL权限,我们基本上能完成Linux中文件的访问权限的设置,但是除此之外,Linux中的文件,还存在一个隐藏权限,针对默认权限,这里也会总结,同时最后还会总结一下文件的搜寻命令,这篇笔记对应《鸟哥Linux私房菜》中的第六章6.4节的内容。Linux中,每次我们新建一个文件,这个文件就存在了默认权限,这个默认权限是如何设置的?Linux系统在为使用者建立文件
2022-06-03 18:38:52
1648
原创 Linux基础学习笔记(五)——文件的ACL权限
Linux基础学习笔记(五)——文件的ACL权限文章目录Linux基础学习笔记(五)——文件的ACL权限前言什么是ACL控制setfaclgetfaclmask——最大有效ACL权限默认的ACL权限和递归的ACL权限小结前言这一篇总结一下ACL权限的内容,对应《鸟哥的Linux私房菜》中的第十三章的内容。什么是ACL控制之前的学习笔记中,我们总结的关于文件权限,只有三种,使用者权限、群组权限、其他人权限。但是没有办法针对某一个使用者或某一个群组来设定特定的权限,比如我们有一个文件——data.fi
2022-05-29 18:12:15
1165
原创 Linux基础学习笔记(四)——账号与群组管理
文章目录前言UID与GIDUID与GID在登录时候的作用/etc/passwd文件结构/etc/shadow文件结构/etc/group文件结构/etc/gshadow文件结构用户和组群管理新增用户——useradd给新用户设置密码——passwd修改账号数据——usermod删除账号数据——userdel用户详细信息的查询组群的管理新增——groupadd修改——groupmod删除——groupdel群组管理员——gpasswd小结前言前面关于文件和文件夹的普通权限,通过chmod等命令改变文件所有
2022-05-21 22:07:25
455
原创 Linux基础学习笔记(三)——文件的基本权限
文章目录前言用户和用户组概述文件属性和权限文件的属性修改文件权限和属性的命令chownchgrpchmod目录的权限小结前言前几篇博客总结了linux中不痛不痒的基础操作,这篇博客开始总结Linux中的文件和目录,涉及Linux中的用户权限相关内容。对应《鸟哥的Linux私房菜》第五章用户和用户组概述关于用户和用户组的概念,实在不想絮叨,《鸟哥的Linux私房菜》一书中的一个图其实解释的非常不错以王二毛为例,文件的而所有者是王二毛,王二毛属于王大毛家这个用户组,而张小猪相对于王二毛,只是系统的其
2022-04-30 17:38:19
1483
原创 Linux基础学习笔记(二)——文件的相关操作
文章目录前言相关目录介绍文件与目录的相关命令ls命令文件的浏览cat命令less命令more命令head和tail命令cp,rm,mv命令cp命令rm命令mv命令小结前言上一篇博客简单介绍了linux的几个基础命令,这一篇博客介绍一下Linux中的文件和目录管理,对应《鸟哥的Linux私房菜》第六章相关目录介绍针对相对路径和绝对路径的介绍,这里就不赘述了,这个实在没啥可说的。这里直接列出linux下的各个目录,然后简单介绍一下[coderman@linux-start ~]$ ll /total
2022-04-05 15:48:08
869
原创 Spring拾遗(四)——Spring中的事务传播机制
文章目录前言准备工作spring中的几种事务传播机制REQUIREDSUPPORTSMANDATORYREQUIRES_NEWNOT_SUPPORTEDNEVERNESTED小结前言针对spring中的事务传播机制,这个是面试的高频问题,但是往往有时候缺乏实例支撑,很难记住相关内容,这篇博客在实例的基础上,总结一下spring的事务传播机制。准备工作通常spring的事务注解是用在方法上,如下所示1、相关数据SQL准备一个数据库,其中有一张数据表,SQL如下DROP TABLE IF EXI
2022-04-03 21:37:57
964
原创 Linux基础学习笔记(一)——基础的命令操作
Linux基础学习笔记(一)——基础的命令操作文章目录Linux基础学习笔记(一)——基础的命令操作前言简单说说终端命令和命令的参数几个基础的命令datecalbc几个快捷键小结前言从今天开始,自己梳理一下平时用到的linux的基础内容,从最基础的命令开始。基础的梳理,还是会按照《鸟哥的Linux私房菜》这本书进行,整体来说这个系列可以看成是自己学习这本书的笔记吧。准备虚拟机的过程,这个就百度吧,网上很多教程,这里就不进行总结了简单说说终端其实操作Linux也存在GHOME的图形化工具,但更多的时
2022-04-01 12:07:23
1057
原创 Mark一下
Mark一下最近遇到了很多事,静下心来思考,不知道是不是自己的学习方式出了问题,还是自己总结的时候太过随意,有些内容遗忘了很多,需要重新调整今年的学习计划和方向,最近暂时不更新博客,确定了新的学习方向之后,再继续出发,暂时给自己的内心放个假...
2022-03-06 20:55:51
79
原创 MySQL基础学习(五)——mysql中的系统函数
前言上一篇博客简单总结了一些mysql中常用的SQL语句,这一篇博客总结一下mysql中常用的函数,以及mysql8.0中新增的公共表达式等内容。mysql中常用的系统函数不多,主要分为时间系统函数,字符串系统函数以及一些其他的系统函数。常用的时间函数直接获取时间的函数直接上表格函数名称说明CURDATE()返回当前日期CURTIME返回当前时间NOW()返回当前的日期和时间DATE_FORMAT(date,fmt)按照fmt的格式,对日期date进行
2022-02-04 17:58:21
1073
原创 MySQL基础学习(四)——SQL语句之DML语句
前言上一篇博客介绍了一下SQL语句中的DDL和DCL语句,主要涉及通过SQL赋予或者撤回相关的用户权限,创建数据表,创建索引等内容,这一篇博客开始总结DML语句,就是我们开发中常用的一些select,insert,update,delete语句。准备工作需要根据相关模型准备一下数据表,这些创建表的语句,在上一篇博客中有过介绍简单的ER模型(单击图片放大),关于一对多和多对多的内容,这里补充说明一下一对多:学生与班级的关系就是典型的一对多的关系,一个学生只能属于一个班级,一个班级可以有多个学生,
2022-01-23 15:43:14
985
原创 MySQL基础学习(三)——SQL语句之DCL与DDL语句
前言上一篇博客简单总结了一下mysql中的数据类型和存储引擎,这一篇开始梳理一下SQL,其实SQL这个东西说大不大,说小不小,但是工作这么多年了,我依旧能看到很多程序员似乎对SQL不是特别熟练,有些对用到聚合函数的select语句该如何使用,似乎都一知半解,这里还是开两篇博客,基于mysql8.0 总结一下SQL的基础语句SQL语句的种类从大类上分,SQL分为DCL,DDL,DML,TCL语句。DCL——数据库管理语句,用于管理数据库访问的,比如用户管理,用户授权等。DDL——数据定义类语句,用于
2022-01-16 19:59:38
488
原创 MySQL基础学习(二)——常见的存储引擎和数据类型
前言上一篇mysql基础学习,简单总结了mysql数据库设计的几个步骤,以及每个步骤要做的事情,但是针对最为关键的物理设计并没有过多提及,因为物理设计部分涉及数据库存储引擎的选择,数据表中字段类型的选择,这些内容较多,这里单独开一篇博客来进行总结物理设计要做的事情数据库物理设计阶段,其实就是根据所选择的关系型数据库的特点,对逻辑模型进行存储结构设计。在mysql中,物理设计中有如下几个事情要完成1、定义数据库、表及字段的命名规范2、选择合适的存储引擎3、为表中的字段选择合适的数据类型4、建立数
2022-01-08 19:59:43
381
原创 MySQL基础学习(一)——数据库设计二三事
前言关于mysql之前学习的零零散散,这次基于mysql8.0进行归零式(从基础SQL出发)总结和学习,但内容不会涉及到DBA那种细粒度,只从开发角度,熟悉其需要了解的内容数据库设计简介首先从数据库设计出发,说明数据库设计中的一些问题,在大学数据库设计概要这么课程中,详细介绍过如果将需求变成E-R数据模型,这个内容在网上也能找到很多资料,这里不会去总结这个。可以参考如下大佬的博客。E-R关系设计介绍。良好的数据库设计是数据库获得高性能的基础。一般的数据库设计分为如下几个步骤:1、需求分析,2、逻辑
2022-01-03 16:49:33
817
原创 2021——不是总结的总结
前言2021,一个十分简单,但又有点不太平凡的一年,这一年心中想法变化很大。2021的足迹依旧坚持博客,依旧坚持总结。第一季度,开始尝试一个简单的个人权限认证平台,从无到有的前后端一套管理系统,其中涉及RAC权限角色模型,shiro,以及前端一些数据表格的展示与编辑,由于完整列出这些内容总结过多,故而只是提炼了其中自己觉得可以借鉴的内容,这些收录在身份认证实例场景和一些实用组件专栏中——身份认证实例场景,一些实用组件。除此之外,还简易入门熟悉了一下kafka,但是不深入,相关内容收录在kafka专
2021-12-25 19:48:45
526
原创 Java并发工具学习(十一)——Future、Callable和FutureTask
文章目录前言Callable接口Future接口Future获取结果异常的处理获取结果出现异常获取任务超时FutureTask获取结果总结前言关于Java并发基础已经并发工具的内容,学习总结到这里,算是到了尾声了,但是在这个时候,依旧没有介绍可以获取结果的线程,这一篇介绍一下可以获取结果的线程Future和Callable我们之前常用的Runnable接口,无法返回结果,也无法抛出可以检查的异常类。为了弥补这个问题,于是有了Callable接口,这个是我们这篇博客要介绍的。Callable接口@F
2021-12-06 01:00:00
399
原创 Java并发工具学习(十)——简单说说AQS
文章目录前言都有的Sync内部类AQS的简单原理三个核心state变量FIFO队列获取和释放锁的方法AQS在CountDownLatch中的使用CountDownLatch中的syncCountDownLatch中的awaitAQS在Semaphore中的使用Semaphore中的acquireSemaphore中的releaseAQS实现一个自己的协作器总结参考资料前言上一篇博客总结完成了CountDownLatch和CyclicBarrier等内容,这些内容的底层并发控制,其实都离不开AQS(Abs
2021-12-06 00:30:00
412
原创 Java并发工具学习(九)——CountDownLatch和CyclicBarrier
文章目录前言CountDownLatchCyclicBarrier二者的区别总结前言继续简单总结一下Java中并发流程控制的工具类,这一篇小结一下CountDownLatch和CyclicBarrierCountDownLatchLatch中文是门闩的意思,CountDown是倒数,倒数到0,门闩开启。从名称可以看出这个工具的使用场景。比如在某多多上拼团购物,5人成团,等到成团了才有资格购买。通常CountDownLatch有两种常见的用法1、一个线程等待其他多个线程倒数为0时,再进入下一步
2021-11-28 22:00:00
193
原创 Java并发工具学习(八)——Semaphore和Condition
文章目录前言SemaphoreCondition总结前言从这一篇博客开始,开始总结线程间协作,并发流程控制的工具类,这一篇主要介绍Semaphore和ConditionSemaphoreSemaphore中文译文为信号量,操作系统中也有同样的概念。类似于生活中常见的许可证的概念。在执行指定业务逻辑之前,需要先获取相关的许可证。在限流的使用场景中也有Semaphore的影子。在Java中,信号量的作用是维护一个"许可证"的计数,线程可以获取许可证,获取成功信号量的个数就减一,同时线程也可以释放一个许
2021-11-28 21:00:00
469
原创 Java并发工具学习(七)——说说CopyOnWriteArrayList和BlockingQueue
前言上一篇博客简单介绍了ConcurrentHashMap,这个也是并发容器之一,这一篇博客继续介绍另外两个并发容器,CopyOnWriteArrayList和BlockingQueue,同样不会深入到具体源码级别,只简单说说源码中认为比较常见的点即可。CopyOnWriteArrayList在上一篇博客中我们简单提到过,为了替代SynchronizedMap,才有了ConcurrentHashMap,原因是SynchronizedMap锁的粒度太大。ConcurrentHashMap锁的粒度稍微小一
2021-11-27 23:45:00
285
原创 Java并发工具学习(六)——简单聊聊ConcurrentHashMap
文章目录前言Map接口HashMap的问题1.7版本中的HashMap和ConcurrentHashMap1.7中的HashMap1.7中的ConcurrentHashMap1.8版本中的HashMap和ConcurrentHashMap1.8中的HashMap结构1.8中的ConcurrentHashMapputValget1.7和1.8中的对比一个简单实例总结前言上一篇简单絮叨了一下CAS和final关键字,这篇博客开始絮叨一下Java并发容器。HashMap,ArrayList这种都是非线程安全的
2021-11-22 00:15:00
405
原创 Java并发工具学习(五)——CAS和final关键字
文章目录前言CAS什么是CAS简单的模拟缺点final关键字final修饰变量普通的类属性类的静态变量普通方法中的变量final修饰方法final修饰类不变性一个面试题总结前言在学习总结完成了原子类之后,继续学习和总结CAS的内容,但是顺带发现final关键字需要梳理一下,所以也就一并归纳到这里了,毕竟final的不变性也在一定层度上保证了线程安全,但是关于final关键字的有些内容,一直没有归纳过。CAS这里关于CAS的介绍,不会卷到介绍什么信号量,什么总线锁哪个层级,如果想卷到这个层级的小伙伴请
2021-11-21 02:30:00
392
原创 Java并发工具学习(四)——原子工具类
前言前面三篇关于Java并发工具的学习总结完成了ThreadLocal,线程池和相关Lock接口实现类的一些总结,但是路漫漫其修远兮,Java中的并发征途还并没结束,这次总结一下原子工具类,这个在后面的并发容器的学习中,会有很多这个,需要提前总结一下有哪几类?什么是原子类这个问题,就不在这里说明了,无非就是可以保证在并发情况下可以保证对其变量的操作是线程安全的。原子类相比于锁有一定的优势。其锁的粒度更细,效率也比锁更高。Java中原子类有哪几类,直接给出一张表格吧类别代表类型基
2021-11-19 01:30:00
559
原创 Java并发工具学习(三)——ReentrantLock和ReentrantReadWriteLock
文章目录前言synchronized不够用么?Lock接口lock方法tryLock方法tryLock(long time,TimeUnit unit)方法lockInterruptibly()方法锁的大致分类ReentrantLock非公平锁和公平锁ReentrantReadWriteLock读写规则优势非公平锁的策略锁的升级与降级小结前言Java中的锁不只有synchronized,在之前的几篇博客中,都或多或少遇到过其他类型的锁,比如ReentrantLock。为什么Java中会有多种锁,这些锁有
2021-11-15 00:15:00
535
原创 Java并发工具学习(二)——简单说说ThreadLocal
文章目录前言ThreadLocal——线程间独享一个对象从SimpleDateFormat开始共享的SimpleDateFormat用ThreadLocal优化一下ThreadLocal——同一个线程内部数据共享ThreadLocal的好处相关源码使用ThreadLocal的问题无法回收的valueNPE问题总结前言上一篇博客梳理了线程池的一些常用知识点,这一篇博客开始絮叨一下ThreadLocal,其实从整体上来说,ThreadLocal有两大使用场景:**1、每个线程之间为了避免出现线程安全,需要独
2021-11-12 02:15:00
640
原创 Java并发工具学习(一)——线程池
前言前面针对Java多线程基础涉及到的内容,几乎都做了总结,从这篇博客开始,我们总结一下Java并发工具的内容,从线程池开始为什么要有线程池主要是因为两点,1、反复创建线程开销很大(这个实在不想解释了);2、过多的线程会占用太多的内存为了解决这两个问题,于是Java引入了池的概念。用少量的线程来避免内存占用过多带来的麻烦;始终只让部分线程保持工作,且可以反复执行提交上来的任务,这就避免了频繁的线程切换带来的损耗。线程池可以一定程度上加快响应速度,可以合理利用CPU和内存,同时也便于统一管理资源。
2021-11-11 01:15:00
735
原创 批量替换MarkDown文档中指定的字符串
批量替换MarkDown文档中指定的字符串文章目录批量替换MarkDown文档中指定的字符串前言需要解决的问题解决方式和思路方式思路具体实现递归找到所有文件准备好源文件和目标文件将匹配的内容替换测试情况总结前言最近买了新电脑,各种配置要升级一下,几乎耗费了一个周末的时间,同时想将以前的博客文档导入过来,由于博客文档都是用Typora写的,其中图片也是存储在本地的。图片路径变化之后,文档中所有的图片都无法找到了,想着是不是可以通过工具解决这个事情需要解决的问题文档迁移之后,原有的文档中的图片都变成了
2021-11-07 20:00:00
1602
原创 Java并发基础学习(八)——好好聊聊死锁
文章目录前言什么是死锁发生死锁的条件发生死锁的必要条件如何定位修复和避免如何定位1、jstack2、ThreadMXBean如何修复如何避免活锁与饥饿活锁饥饿一些面试题总结前言前面几篇博客,算是对java多线程基础有了一个简单的介绍,但是没有总结一下死锁,针对死锁的问题,这一篇博客也详细总结一下什么是死锁死锁是发生在并发中,当两个(或者多个)线程(或者进程)相互持有对方所需要的资源,又不主动释放,导致所有请求都无法继续前进,导致程序陷入无尽的阻塞。一个必然发生死锁的代码实例/** * auto
2021-11-05 01:00:00
105
原创 Java内存模型基础学习(三)——最后说说原子性
前言关于JMM的内容其实并不多,指令重排,可见性,原子性,就这三大块,这次的简单总结,并没有过多深入总结,也只是总结面试上的内容,本篇博客简单说一下原子性,并总结一下JMM中的相关面试问题原子性要说到什么是原子性,其实这个应该学过计算机的同学都应该知道,每次聊到原子性,都会老生常谈的几个实例也就是那几个,无非就是转账要么全部成功,要么全部失败,其操作组合是一个原子性的。其实通俗点理解就是一系列的操作,要么全部执行成功,要么全部不执行,不会出现执行一半的情况,其操作组合是不可分割的。Java中的原子
2021-10-30 11:00:00
63
原创 Java内存模型基础学习(二)——絮叨一下可见性
前言前一篇博客简单梳理总结了一下重排序的问题,需要知道的是重排序是编译和CPU层面对指令的优化操作,但是在线程之间正常交互运行的时候,也会出现数据不一致的情况,这个时候我们就需要看一下可见性的问题了。可见性什么是可见性还是通过实例代码来说明/** * autor:liman * createtime:2021-10-22 * comment:可见性实例,演示可见性带来的问题 */@Slf4jpublic class FieldVisibly { int a = 1; i
2021-10-28 01:45:00
86
原创 Java内存模型基础学习(一)——简单聊聊重排序
前言前面学习了Java多线程的基础,但也仅仅是基础中的基础,如果想要较系统的学习好Java高并发的相关内容,依旧路漫漫。后续几篇博客会总结JMM的相关内容,总结完成之后再学习JUC的相关内容Java内存模型简介众所周知,Java是一次编译,多处运行,如果没有统一的内存模型,是很难做到这一点的。比如C语言,C语言中并不存在内存模型的概念,其有很多都依赖于处理器本身,可能一段相同的C语言程序,在不同处理器上运行,得到的结果都不同,这就很难保证并发安全。而Java语言通过提出Java内存模型的规范,屏蔽了这
2021-10-26 21:00:00
92
原创 Java并发基础学习(七)——简述synchronized关键字
前言前几篇博客算是总结完成了Java中多线程的基础内容,但是基础内容中缺失了synchronized关键字的角色,这里还是补充介绍一下,到这里Java多线程中基础中的基础算是完成了,后面会简单介绍一下JMM之后,开始学习总结各种JUC的工具类。如果对Java多线程稍微有了解的,都应该知道synchronized关键字,这个关键字能够保证同一时刻最多只有一个线程执行其保护的代码,以达到保证并发安全的效果。对象锁&类锁针对synchronized这个关键字可以修饰方法,属性,代码块,从其基础使用
2021-10-21 21:37:44
113
原创 Java并发基础学习(六)——多线程会导致的问题
前言多线程虽然会给我们程序带来很多的提高,但是其实也有些问题需要解决,如果不解决多线程带来的问题,其实多线程并不能较好的发挥其作用,一般来说主要是线程安全问题(对相关变量的访问控制问题)和性能问题(线程上下文切换带来的性能损耗等)。本篇博客就总结一下这两个内容线程安全问题关于线程安全问题,还是要先梳理一下这个概念,在《Java Concurrenty in Practice》一书中,对线程安全给出了一个定义——当多个线程访问一个对象时,如果不考虑这些线程在运行时环境下的调度和交替执行,也不需要进行额外
2021-10-21 19:30:24
431
原创 Java并发基础学习(五)——线程属性以及异常处理
前言总结到这里,线程的基础知识几乎完成大半了,这篇博客对线程的属性以及异常处理做一个小结,之后会总结线程的安全性,由线程的安全问题引出Java线程的内存模型的学习。线程的各个属性总览一般Java中线程的属性有如下几个属性名称用途编号(线程ID)用于标示不同的线程,每个线程有自己的ID名称(Name)用于给线程命名,默认为Thread-i,为了让用户和程序开发者方便调试和定位问题,一般需要自己给线程起一个容易识别的名称是否是守护线程(isDaemon)true代
2021-10-16 13:18:11
108
springboot-auth.7z
2020-09-17
spring-boot-redis.zip
2020-08-17
springboot-mq-learn.7z
2019-10-30
手写springboot的starter实例.zip
2019-10-05
spring-boot动态注入简单实例.zip
2019-08-25
网络编程入门的一些基本概念
2013-04-07
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人