管程的概念 管程 (英语:Moniters,也称为监视器) 是一种程序结构,结构内的多个子程序(对象或模块)形成的多个工作线程互斥访问共享资源。 这些共享资源一般是硬件设备或一群变量。管程实现了在一个时间点,最多...
分类:
编程语言 时间:
2015-07-29 19:56:21
阅读次数:
179
1.多线程同步与多线程互斥的关系其实这也是我一直困扰的问题,在这里我只是说说我的理解。我的理解是多线程互斥是针对于多线程资源而言的。而多线程同步是针对于多线程时序问题。由于线程的并发性导致其运行时间的不确定性,所以我们需要控制多个线程的协同工作。还是举卖票的例子来区别互斥和同步的区别吧:比如我们有两...
分类:
编程语言 时间:
2015-07-29 18:44:38
阅读次数:
165
线程互斥public void method1() { synchronized(this) { ... } } 等同于 public synchronized void method1() { ... }public void method2() { synchronized(XXXX.class...
分类:
其他好文 时间:
2015-07-24 22:21:22
阅读次数:
133
java线程互斥是为了保证,同一时刻最多只有一个线程执行该段代码。那么它的出现又是为了解决什么问题呢?账户存取款,在同一时间段只能让一个人进行操作。 下面来看一个简单实例(多线程带来的问题):public class TraditionalThreadSynchronized {
/**
* @param args
*/
public static void main(String[...
分类:
编程语言 时间:
2015-07-21 22:19:50
阅读次数:
146
原文链接:http://coolxing.iteye.com/blog/1236909两种互斥锁机制:1、synchronized2、ReentrantLockReentrantLock是jdk5的新特性,采用ReentrantLock可以完全替代替换synchronized传统的锁机制,而且采用R...
分类:
编程语言 时间:
2015-07-20 16:10:12
阅读次数:
137
使用c++11 写个日志类主要练习 线程 互斥量的使用代码如下:#include "stdafx.h"#include "Logger.h"#include #include Logger::Logger(const string& filepath):filePath_(filepath){}Lo...
分类:
编程语言 时间:
2015-07-19 11:34:19
阅读次数:
163
线程安全问题可以用银行转账来解释 1 /** 2 * 传统的线程互斥技术 3 * @author LiTaiQing 4 */ 5 public class TraditionalThreadSynchronized { 6 7 public static void mai...
分类:
编程语言 时间:
2015-07-10 13:12:57
阅读次数:
146
进程(process)和线程(thread)是操作系统的基本概念,但是它们比较抽象,不容易掌握。最近,我读到一篇材料,发现有一个很好的类比,可以把它们解释地清晰易懂。...
分类:
编程语言 时间:
2015-07-09 11:26:05
阅读次数:
179
互斥量(mutex)互斥锁创建有两种方法创建互斥锁,静态方式和动态方式。POSIX定义了一个宏PTHREAD_MUTEX_INITIALIZER 来静态初始化互斥锁,方法如下:pthread_mutex_t mutex=PTHREAD_MUTEX_INITIALIZER;在LinuxThreads实...
分类:
编程语言 时间:
2015-07-08 20:25:25
阅读次数:
230
互斥锁
多线程编程中,(多线程编程)可以用互斥锁(也称互斥量)可以用来保护关键代码段,以确保其独占式的访问,这有点像二进制信号量。POSIX互斥锁相关函数主要有以下5个:
#include
int pthread_mutex_init(pthread_mutex_t *mutex, const pthread_mutexattr_t *mutexattr);
int pthr...
分类:
编程语言 时间:
2015-07-05 09:41:42
阅读次数:
239