假设一台5个人同时要上网每个人上时间1~5分钟不等加锁同步情况:排队上网,每个人都在自己的上网时间完毕后出来。静态方法同步代码class Person extends Thread{ private Random r = new Random(); private int Num; ...
分类:
编程语言 时间:
2015-11-09 18:58:01
阅读次数:
204
ConcurrentHashMap是一个线程安全的Hash Table,它的主要功能是提供了一组和HashTable功能相同但是线程安全的方法。ConcurrentHashMap可以做到读取数据不加锁,并且其内部的结构可以让其在进行写操作的时候能够将锁的粒度保持地尽量地小,不用对整个Concurre...
分类:
其他好文 时间:
2015-11-09 18:48:49
阅读次数:
190
逻辑备份mysqldump -uroot -paixocm sx > my.sqlmysqldump -uroot -paixocm sx -l > my.sql 备份时加锁mysqldump -uroot -paixocm --databases ds sx > my.sqlmysqldump ....
分类:
数据库 时间:
2015-11-09 17:08:47
阅读次数:
202
多线程的同步机制对资源进行加锁,使得在同一个时间,只有一个线程可以进行操作,同步用以解决多个线程同时访问时可能出现的问题。同步机制可以使用synchronized关键字实现。synchronized关键字修饰一个方法的时候,该方法叫做同步方法。synchronized方法执行完或发生异常时,会自动释...
分类:
编程语言 时间:
2015-11-09 01:24:40
阅读次数:
252
在程序设计中,我们有时会遇到这样的情况,一个线程将数据写到一个buffer中,另外一个线程从中读数据。所以这里就有多线程竞争的问题。通常的解决办法是对竞争资源加锁。但是,一般加锁的损耗较高。其实,对于这样的一个线程写,一个线程读的特殊情况,可以以一种简单的无锁RingBuffer来实现。这样代码的运...
分类:
编程语言 时间:
2015-11-08 14:05:26
阅读次数:
259
一、SVN 中 clean up 的功能 当Subversion改变你的工作拷贝(或是.svn中的任何信息),它会尽可能的小心,在修改任何事情之前,它把意图写到日志文件中去,然后执行log文件中的命令,并且执行过程中在工作拷贝的相关部分保存一个锁,防止Subversion客户端在变更过程中访问工作....
分类:
其他好文 时间:
2015-11-06 19:34:22
阅读次数:
170
判断是否预加锁的模式 要强壮于 已添加的lock锁模式/*********************************************************************//**Checks if a transaction has a GRANTED explicit lo...
分类:
其他好文 时间:
2015-11-06 17:44:00
阅读次数:
228
转载 http://chenzhou123520.iteye.com/blog/1863407上一篇文章《MySQL悲观锁总结和实践》谈到了MySQL悲观锁,但是悲观锁并不是适用于任何场景,它也有它存在的一些不足,因为悲观锁大多数情况下依靠数据库的锁机制实现,以保证操作最大程度的独占性。如果加锁的时...
分类:
数据库 时间:
2015-11-05 15:03:22
阅读次数:
238
一、数据库当中的锁数据库是一个多用户使用的共享资源。当多个用户并发地存取数据时,在数据库中就会产生多个事务同时存取同一数据的情况。若对并发操作不加控制就可能会读取和存储不正确的数据,破坏数据库的一致性。加锁是实现数据库并发控制的一个非常重要的技术。当事务在对某个数据对象进行操作前,先向系统发出请求,...
分类:
数据库 时间:
2015-11-05 11:54:59
阅读次数:
218
对象的发布:使对象能够在当前作用域之外的代码中使用如何安全的发布对象?1:可变对象比如通过加锁的方式发布2:不可变对象可以随意的被发布可变对象必须通过安全的方式发布,这意味着发布和使用该对象的线程都必须使用同步.要安全的发布对象,对象的状态和对象的引用必须对其他的线程可见,常见的做法有:1:在静态初...
分类:
其他好文 时间:
2015-11-04 19:15:22
阅读次数:
169