复习笔记
Lerix
这个作者很懒,什么都没留下…
展开
-
乐观锁、悲观锁、读写锁、互斥锁之间的关系
乐观锁、悲观锁 同一维度的概念,都是从数据访问的角度来说。所以经常出现在数据库相关问题中、 即当数据同时被多个对象访问了,应该持什么态度来对数据进行保护 悲观锁认为,数据被访问,对方很可能要修改这个数据。所以在此思想的引导下,数据被访问时,不管是读还是写,步步加锁。严格排斥其他对象的访问。 乐观锁认为,数据被访问,对方不大可能要修改这个数据。所以在此思想的引导下,一个对象读这个数据,不会排斥其他的访问(包括读和写),只有在自己写的时候,通过cas的方式,确定自己写的时候,没人动过这个数据。有人动过,则取消重原创 2020-12-10 18:10:52 · 2044 阅读 · 1 评论 -
数据库事务的ACID四大特性及脏读,不可重复读,幻读等
数据库事务的ACID四大特性及脏读,不可重复读,幻读等 事务(transaction)到底是个啥? transaction有事务、交易的含义,翻译成事务,很难理解。如果理解为交易,就很清楚了。 想想如果要完成一笔交易,肯定一手交钱一手交货,这两个行为都得完成,否则交易不成立,钱和货都要归为原主。 事务其实就是一系列行为组成的,这些行为要么全部完成,要么全部取消。 事物的ACID A 原子性(Atomicity) 一个事务是一个整体,就像一颗原子不可分割一样,事务里的行为不能单独存在。 C原创 2020-12-10 16:56:57 · 508 阅读 · 0 评论 -
golang中的闭包
什么是闭包? 闭包可认为是一种放在特殊位置上的函数。这个位置可能是另一个函数的参数、返回值。 go语言支持这种特殊的用法。这种用法也带来一些效果 闭包的特性 如下函数,是个典型的闭包 package main import ( "fmt" ) func test02() func() int { x := 0 fmt.Println("初始化后的自由变量值:", x) return f...原创 2019-09-25 22:59:04 · 328 阅读 · 0 评论