一:两个进程间的两个线程通信,相当于进程间通信 二:一个进程中的两个线程间通信 通信方式: 1.互斥锁 mutex; lock_guard (在构造函数里加锁,在析构函数里解锁) unique_lock 自动加锁、解锁 2.读写锁 shared_lock 3.信号量 c++11中未实现,可以自己使用 ...
分类:
编程语言 时间:
2019-04-28 15:46:58
阅读次数:
320
很多小伙伴在学习Java的时候,总是感觉Java多线程在实际的业务中很少使用,以至于不会花太多的时间去学习,技术债不断累积!等到了一定程度的时候对于与Java多线程相关的东西就很难理解,今天需要探讨的东西也是一样的和Java多线程相关的!做好准备,马上开车!
学过Java多线程的应该都知道什么是锁,没学过的也不用担心,Java中的锁可以简单的理解为多线程情况下访问临界资源的一种线程同步机制。
在学习或者使用Java的过程中进程会遇到各种各样的锁的概念:公平锁、非公平锁、自旋锁、可重入锁、偏向锁、轻量级锁、重量级锁、读写锁、互斥锁等。
分类:
其他好文 时间:
2019-04-24 09:20:34
阅读次数:
132
ReentrantLock是一个可重入的互斥锁,基于AQS实现,它具有与使用 synchronized 方法和语句相同的一些基本行为和语义,但功能更强大。 lock和unlock 中进行同步操作都是从lock方法开始。lock获取锁,进行一系列的业务操作,结束后使用unlock释放锁。 lock 中 ...
分类:
其他好文 时间:
2019-04-24 09:18:46
阅读次数:
107
1. iOS中的互斥锁 在编程中,引入对象互斥锁的概念,来保证共享数据操作的完整性。每个对象都对应于一个可称为“互斥锁”的标记,这个标记用来保证在任一时刻,只能有一个线程访问对象。 1.1 @synchronized (self) 1.2 NSLock 1.3 pthread pthread除了创建 ...
分类:
移动开发 时间:
2019-04-17 17:56:29
阅读次数:
156
什么是线程安全问题?当多个线程共享一个全局变量,对其做写操作时,可能会受到其他线程的干扰,从而引发线程安全问题内置锁(synchronized)内置锁也叫互斥锁,可以保证线程的原子性,当线程进入方法时,会自动获得一个锁,一旦锁被获得,其他线程必须等待获得锁的线程执行完代码释放锁,会降低程序的执行效率使用方式:同步方法publicsynchronizedvoidsale(){if(trainCoun
分类:
其他好文 时间:
2019-04-14 19:21:13
阅读次数:
190
ipc对象持久性 管道或FIFO尽管是随进程持续而不是随内核持续,但是管道中的数据在内核中维护,最后一个将某个管道打开着用于读的进程关闭该管道后,内核将丢弃所有的数据并删除该管道 管道 进程持久性 Posix互斥锁 Posix条件变量 Posix读写锁 进程持久性 进程持久性 进程持久性 Posix ...
分类:
其他好文 时间:
2019-04-13 10:52:14
阅读次数:
155
在Java的并发中,锁是一个非常重要的概念。 锁的种类可以分为8种,一共15个,分别是: 1.公平锁/非公平锁 2.可重入锁/不可重入锁 3.独享锁/共享锁 4.互斥锁/读写锁 5.乐观锁/悲观锁 6.分段锁 7.偏向锁/轻量级锁/重量级锁 8.自旋锁 ...
分类:
编程语言 时间:
2019-04-12 23:10:04
阅读次数:
198
恢复内容开始 synchronized 互斥锁 synchronized(this) 当前类的所有synchronized(this) 都被锁了,还有synchronized static也一样 synchronized代码块实际上多了monitorenter和monitorexit两条指令。mon ...
分类:
编程语言 时间:
2019-04-12 13:15:41
阅读次数:
189
```c++ include include include std::mutex coutMutex; int main(){ std::thread t([]{ std::cout lockGuard(coutMutex); std::cout lockGuard(coutMutex); std ...
分类:
其他好文 时间:
2019-04-11 16:21:20
阅读次数:
79
SQLite 与线程 SQLite 是线程安全的。 线程模型 SQLite 支持如下三种线程模型 单线程模型 这种模型下,所有互斥锁都被禁用,同一时间只能由一个线程访问。 多线程模型 这种模型下,一个连接在同一时间内只有一个线程使用就是安全的。 串行模型 开启所有锁,可以随意访问。 设置线程模型 S ...
分类:
数据库 时间:
2019-04-10 13:34:53
阅读次数:
227