首先锁是用来做互斥的,解决并发执行时的数据不一致问题 如图会导致,不可重复读 如果这里用lock就可以解决,数据库里面有个LockManager来作为master,负责锁的记录和授权 数据库里面的基本的锁类型, 其实就是读锁,写锁 但是如果光是有读写锁,只能解决当个操作互斥和正确,无法解决trans ...
分类:
数据库 时间:
2019-06-25 15:18:31
阅读次数:
143
1.mysql部分 问题 问题1:mysql的存储引擎 问题2:mysql的索引机制 问题3:mysql的事务以及事务隔离级别 问题4:mvcc/GAP lock是做什么的 问题5:mysql的悲观锁与乐观锁 回答 问题1: mysql的存储引擎 在mysql中的查询语句为:mysql> show ...
分类:
数据库 时间:
2019-06-25 10:28:03
阅读次数:
148
线程中的知识点基本都已经学完了,看看Java5并发库中提供的集合。。。 一、可堵塞队列 队列包含固定长度的队列和不固定长度的队列 ArrayBlockQueue中只有put()方法和take()方法才具有阻塞功能 1、阻塞队列的功能和效果,代码如下: 2、堵塞队列来实现通知的功能 代码示例如下: 二 ...
分类:
编程语言 时间:
2019-06-23 21:08:06
阅读次数:
105
请求进程,内核缓存区,设备I/O 请求进程把数据提交给内核缓存空间需要等待,内核把数据复制给设备I/O,直到数据就绪,还需要等待,这些等待过程大致可以分为五种模式 所谓阻塞:任务完成前只能等待 非阻塞:任务完成前,可以接着干别的事情 异步非阻塞(上图)数据从设备I/O复制到内核缓存的过程中,请求处于 ...
分类:
系统相关 时间:
2019-06-16 09:33:24
阅读次数:
125
通过Java指南我们知道Java集合框架(Collection Framework)如何为并发服务,我们应该如何在单线程和多线程中使用集合(Collection)。 话题有点高端,我们不是很好理解。所以,我会尽可能的描述的简单点。通过这篇指南,你将会对Java集合由更深入的了解,而且我敢保证,这会对 ...
分类:
编程语言 时间:
2019-06-14 18:30:17
阅读次数:
120
一、译文 翻译来自官方文档:Locking Reads If you query data and then insert or update related data within the same transaction, the regular SELECT statement does no ...
分类:
数据库 时间:
2019-05-31 16:22:29
阅读次数:
145
1.Java 通过阻塞队列实现生产者消费者模式 阻塞队列 Blocking Queue 当队列空时,获取元素的线程会等待 当队列满时,存储元素的线程会等待 提供的方法: 插入元素: add(e):抛出异常 offer(e):返回特殊值 put(e):一直阻塞 offer(e,time,unit):超 ...
分类:
其他好文 时间:
2019-05-17 12:07:13
阅读次数:
144
14.7.1 InnoDB Locking 14.7.1 InnoDB Locking 14.7.1 InnoDB Locking 14.7.1 InnoDB Locking This section describes lock types used by InnoDB. Shared and E ...
分类:
数据库 时间:
2019-05-15 16:19:06
阅读次数:
188
如果只需要知道一种编程语言就可以构建一个全栈的应用程序,是不是特别了不起?RyanDahl为了把这个想法成为现实,创造了node.js。Node.js是建立在Chrome强劲的V8JavaScript引擎上的服务器端框架。虽然最初是用C++编写的,但是应用程序通过JavaScript运行。这样一来,问题就解决了。一种语言就可以统治一切。而且,在整个应用程序中你只需要使用这一种语言。所以,我们需要深
分类:
编程语言 时间:
2019-05-15 09:43:23
阅读次数:
152
Java多线程非常复杂,可以使用BlockingQueue和Executor等工具类来简化使用。但还是要弄清wait()、notify()和notifyAll()的作用和用法。它们都是native方法 一、wait() 作用:告诉当前调用它的方法释放锁并sleep,直到其它某个线程也进入sleep状 ...
分类:
编程语言 时间:
2019-05-13 16:10:22
阅读次数:
155