码迷,mamicode.com
首页 >  
搜索关键字:加锁    ( 2232个结果
线程死锁的思考
线程池中的死锁情况 这次死锁发生在什么情况下呢?在最开始写线程池的时候,我设计了线程是可重用的,主要是通过Event信号实现,通过在每个线程核心工作代码执行完毕后会将自己归还到池中,然后等待Event信号。主线程会以循环超时阻塞的方式监视一个任务队列,当发现有任务时便会从线程池中取出一个线程,并设置它的任务和目标函数,然后去start或者resume,resume就是会设置Event信号让线程不再阻塞,这里,从池中取线程的方法_get和归还线程方法returnThread都已经加锁,_get和return...
分类:编程语言   时间:2014-07-23 17:15:01    阅读次数:333
九、oracle 事务
一、什么是事务事务用于保证数据的一致性,它由一组相关的dml语句组成,该组的dml(数据操作语言,增删改,没有查询)语句要么全部成功,要么全部失败。如:网上转账就是典型的要用事务来处理,用于保证数据的一致性。二、事务和锁当执行事务操作时(dml语句),oracle会在被作用的表上加锁,防止其它用户修...
分类:数据库   时间:2014-07-23 16:58:21    阅读次数:314
Qt同步与异步处理
1.互斥量(QMutex)         头文件声明:    #include         互斥量声明:    QMutex m_Mutex;         互斥量加锁:    m_Mutex.lock();         互斥量解锁:    m_Mutex.unlock();   2.等待条件(QWaitCondition)         头文件声明:    #inc...
分类:其他好文   时间:2014-07-23 13:20:44    阅读次数:489
android 数据存储的几种方式
总体的来讲,数据存储方式有三种:一个是文件,一个是数据库,另一个则是网络。其中文件和数据库可能用的稍多一些,文件用起来较为方便,程序可以自己定义格式;数据库用起稍烦锁一些,但它有它的优点,比如在海量数据时性能优越,有查询功能,可以加密,可以加锁,可以跨应用,跨平台等等;网络,则用于比较重要的事情,比...
分类:移动开发   时间:2014-07-22 22:46:52    阅读次数:384
Java关键字synchronized详解
synchronized 关键字,代表这个方法加锁,相当于不管哪一个线程A每次运行到这个方法时,都要检查有没有其它正在用这个方法的线程B(或者C D等),有的话要等正在使用这个方法的线程B(或者C D)运行完这个方法后再运行此线程A,没有的话,直接运行 它包括两种用法:synchronized .....
分类:编程语言   时间:2014-07-22 00:23:35    阅读次数:547
读写锁的实现
读写锁在多线程应用中经常用到。适用于读线程多余写线程的场合。对读线程读取共享资源时不加锁,而对写线程写共享资源时进行加锁控制。先说一下读线程控制:只要此时没有写操作,就可以进行读取。一旦有写操作,则阻塞等待。对于写线程来说,如果此时有读线程正在读取资源,则等待其读取完,然后判断是否所有的读线程是否已...
分类:其他好文   时间:2014-07-19 09:25:42    阅读次数:167
MYSQL MVCC实现及其机制
Multiversion Concurrency ControlMVCC避免了许多需要加锁的情形以及降低消耗。这取决于它实现的方式,它允许非阻塞读取,在写的操作的时候阻塞必要的记录。MVCC保存了某一时刻数据的一个快照。意思就是无论事物运行了多久,它们都能看到一致的数据。锁的策略 ...
分类:数据库   时间:2014-07-16 19:55:50    阅读次数:238
线程安全和线程不安全理解
线程安全就是多线程访问时,采用了加锁机制,当一个线程访问该类的某个数据时,进行保护,其他线程不能进行访问直到该线程读取完,其他线程才可使用。不会出现数据不一致或者数据污染。 线程不安全就是不提供数据访问保护,有可能出现多个线程先后更改数据造成所得到的数据是脏数据 =========================================================...
分类:编程语言   时间:2014-07-14 18:10:05    阅读次数:279
MySQL锁实现
§1. InnoDB行锁是通过给索引上的索引项加锁来实现的,这一点与Oracle不同,后者是通过在数据块中对相应数据行加锁来实现的。InnoDB这种行锁实现特点意味着:只有通过索引条件检索数据,InnoDB才使用行级锁,否则,InnoDB将使用表锁!§2.由于MySQL的行锁是针对索引加的锁,不是针...
分类:数据库   时间:2014-07-14 10:46:24    阅读次数:239
基于windows api实现的共享锁/独占锁
众所周知,windows平台上实现线程同步,或者说资源的加锁与解锁的方法有内核事件、临界区、互斥量、信号量,甚至interlocked系列函数等多种手段。但是在日常的编程中,我们使用这些手段对 “多个线程同时对同一个资源进行读写” 的时候,在读写之前先要对资源假锁,读写完之后要对资源解锁。 设想这样一种情况,有一个ftp服务器,每天有很频繁的对这个ftp服务的文件进行下载,但是几乎好几天才会对...
分类:Windows程序   时间:2014-07-12 19:27:34    阅读次数:397
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!