转自:https://tech.meituan.com/innodb-lock.html 前言: 我们都知道事务的几种性质,数据库为了维护这些性质,尤其是一致性和隔离性,一般使用加锁这种方式。同时数据库又是个高并发的应用,同一时间会有大量的并发访问,如果加锁过度,会极大的降低并发处理能力。所以对于加 ...
分类:
数据库 时间:
2017-08-17 10:37:14
阅读次数:
286
单例模式 单例模式,可以说设计模式中最常应用的一种模式了,据说也是面试官最喜欢的题目。但是如果没有学过设计模式的人,可能不会想到要去应用单例模式,面对单例模式适用的情况,可能会优先考虑使用全局或者静态变量的方式,这样比较简单,也是没学过设计模式的人所能想到的最简单的方式了。 一般情况下,我们建立的一 ...
分类:
编程语言 时间:
2017-08-16 23:14:27
阅读次数:
343
锁的分类 从对数据的类型 (读\写)分: 1.读锁(共享锁):针对同一份数据,多个读操作可以同时进行而不会互相影响 2.写锁(排它锁):当前写操作没有完成前,它会阻断其他写锁和读锁 从对数据操作的粒度分: 1.表锁 2.行锁 表锁(偏读) 1.偏向MyISAM存储引擎,开销小,加锁快;无死锁;锁的粒 ...
分类:
数据库 时间:
2017-08-16 11:25:26
阅读次数:
245
前言 1.上一讲简介了NSThread的使用。尽管也能够实现多线程编程,可是须要我们去管理线程的生命周期。还要考虑线程同步、加锁问题,造成一些性能上的开销。我们也能够配合使用NSOperation和NSOperationQueue实现多线程编程,实现步骤大致是这种: 1> 先将须要运行的操作封装到一 ...
分类:
编程语言 时间:
2017-08-15 13:20:09
阅读次数:
202
mysql5.5+的版本默认引擎都是InnoDB,早期的Mysql版本默认的存储引擎是myISAM innodb: 1.事务操作2.外键操作3.行级锁,这是当有where条件的时候。没有where时,不知道在那一个范围进行搜索时,也是表锁.提供和 Oracle 一样的一致性的不加锁读取,能增加并发读 ...
分类:
数据库 时间:
2017-08-14 23:30:03
阅读次数:
219
Manager 可以实现列表,字典,变量,锁,信号量,事件等的数据之间的共享。Manager已经默认加锁了。 运行结果: ...
分类:
系统相关 时间:
2017-08-14 16:42:13
阅读次数:
162
MySQL中的锁概念 MySQL中不同的存储引擎支持不同的锁机制。比如MyISAM和MEMORY存储引擎采用的表级锁,BDB采用的是页面锁,也支持表级锁,InnoDB存储引擎既支持行级锁,也支持表级锁,默认情况下采用行级锁。 Mysql3中锁特性如下: 表级锁:开销小,加锁块;不会出现死锁,锁定粒度 ...
分类:
数据库 时间:
2017-08-13 18:06:51
阅读次数:
278
类修饰符: public(访问控制符)——>将一个类声明为公共类,他可以被任何对象访问,一个程序的主类必须是公共类。abstract——>将一个类声明为抽象类,没有实现的方法,需要子类提供方法实现。final——>将一个类生命为最终(即非继承类),表示他不能被其他类继承。friendly——>默认的 ...
分类:
编程语言 时间:
2017-08-13 13:33:17
阅读次数:
142
1、引言 本文介绍单生产者单消费者模型的队列。依据写入队列的内容是定长还是变长,分为单生产者单消费者定长队列和单生产者单消费者变长队列两种。单生产者单消费者模型的队列操作过程是不须要进行加锁的。生产者通过写索引控制入队操作,消费者通过读索引控制出队列操作。二者相互之间对索引是独享,不存在竞争关系。例 ...
分类:
其他好文 时间:
2017-08-13 13:23:39
阅读次数:
235
创建仓库 检出数据(从SVN服务器下载数据到本地) 更新本地版本为SVN服务器最新版本 添加文件 修改文件 删除文件 恢复本地文件(修改/删除了文件还未提交到SVN服务器,可进行还原操作) 解决冲突 SVN锁机制(避免提交冲突——为文件加锁(基于权限)) 获取锁 释放锁 1.当锁的用户提交文件后,锁 ...
分类:
其他好文 时间:
2017-08-12 19:45:06
阅读次数:
176