码迷,mamicode.com
首页 >  
搜索关键字:加锁    ( 2232个结果
oracle锁的概念1
1、锁是什么 数据库是一个多用户使用的共享资源,当多个用户并发的存储取数据的时候,在数据库中就会产生多个事务同时存取同一数据的时候,若对并发操作不加控制就可能读取和存储不正确的数据,破坏数据库的一致性。 加锁是实现数据库并发的一个很重要的技术,当事务在对某个对象数据进行操作的时前,系统会先收到请求, ...
分类:数据库   时间:2018-11-07 11:37:01    阅读次数:160
CopyOnWriteArrayList你都不知道,怎么拿offer?
前言 只有光头才能变强 前一阵子写过一篇COW(Copy On Write)文章,结果阅读量很低啊... "COW奶牛!Copy On Write机制了解一下" 可能大家对这个技术 比较陌生 吧,但这项技术是 挺多应用场景 的。除了上文所说的Linux、文件系统外,其实在 Java 也有其身影。 大 ...
分类:其他好文   时间:2018-11-07 11:22:07    阅读次数:153
关于java多线程任务执行时共享资源加锁的方式思考
1.加锁方式: 1-1.使用synchronized关键字进行方法或代码块的加锁方式 1-2.使用ReentrantLock类提供的lock()方法的方式 2.代码实现(传统的银行取款存款问题): 2-1.Account.java类:账户类 package com.java.thread; impo ...
分类:编程语言   时间:2018-11-05 16:26:24    阅读次数:268
Go语言并发编程(二)
通道(channel) 单纯地将函数并发执行是没有意义的。函数与函数间需要交换数据才能体现并发执行函数的意义。虽然可以使用共享内存进行数据交换,但是共享内存在不同的goroutine中容易发生竞态问题。为了保证数据交换的正确性,必须使用互斥量对内存进行加锁,这种做法势必造成性能问题。 Go语言提倡使 ...
分类:编程语言   时间:2018-11-04 11:17:01    阅读次数:191
JDK并发包--重入锁
重入锁基本使用: 使用java.util.concurrent.locks.ReentrantLock 类来实现,可以替代synchronized关键字。如下例,重入锁有着显示的操作过程,开发者可以手动指定在哪里加锁,在哪里释放(退出临界区时必须释放,不然其他线程没有机会再访问了)。重入的意思是,同 ...
分类:其他好文   时间:2018-11-03 23:06:56    阅读次数:168
java多线程9.使用显式锁
在协调共享对象的访问时可以使用的机制有synchronized和volatile。java 5.0新增了一种新的机制:ReentrankLock。 ReentrankLock并不是一种替代内置加锁的方法,而是当内置加锁机制不适用时,作为一种可选择的高级功能。与无条件的锁获取模式相比,它具有更完善的错 ...
分类:编程语言   时间:2018-11-03 12:39:24    阅读次数:164
java多线程8.性能与活跃性问题
死锁——锁顺序死锁 两个线程试图以不同的顺序来获得相同的锁。如果按照相同的顺序来请求锁,那么就不会出现循环的加锁依赖,因此也就不会产生死锁。 动态的锁顺序死锁 考虑资金转账问题,将资金从一个账户转入另一个账户。在开始转账之前,首先要获得这两个Account对象的锁,以确保通过原子的方式来更新两个账户 ...
分类:编程语言   时间:2018-11-03 11:17:38    阅读次数:185
行锁、页面锁与表锁
按锁定粒度:表锁、页面锁、行锁 存储引擎支持情况: 在具体说明之前得明白什么是死锁,什么是锁冲突 死锁: 多个进程互相等待对方锁的释放 锁冲突:一个进程等待另一个进程释放需要的锁 行锁 粒度小,开销大,加锁慢,会产生死锁,发生锁冲突的概率最低,并发度也最高。 备注:在InnoDB中,锁是逐步获得的, ...
分类:其他好文   时间:2018-11-02 16:37:42    阅读次数:295
Java并非集合
Java并发集合 并发集合实现1 JDK1.5的出现,对于集合并发编程来说,java developer有了更多的选择。不过,在JDK1.5之前,Java也还是提供了一些解决方案。 (1)最为简单直接的就是在程序中我们自己对共享变量进行加锁。不过,缺点也显而易见,手动实现线程安全间接增加了程序的复杂 ...
分类:编程语言   时间:2018-11-01 01:10:19    阅读次数:218
源码之ConcurrentHashMap
前言我们平常使用的很多的是HashMap,但是在多线程并发情况下是非安全的,虽然HashTable和Collections.synchronizedMap(hashMap)能够解决并发安全问题,但是这两种方式都是对整个hash表进行读写加锁,其性能可想而知。所以出现了CurrentHashMap解决并发和性能问题。JDK7\JDK8中因为实现有很大差别,所以我们需要深入去进行对比,分析两个版本分别
分类:其他好文   时间:2018-10-31 23:24:42    阅读次数:178
2232条   上一页 1 ... 75 76 77 78 79 ... 224 下一页
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!