#include #include #include #include pthread_cond_t cond;pthread_mutex_t mp; void *consumer1(void *p) { pthread_mutex_lock(&mp); ...
分类:
其他好文 时间:
2014-09-27 02:10:19
阅读次数:
235
#include #include #include #include pthread_cond_t cond;pthread_mutex_t mp; void *consumer1(void *p) { pthread_mutex_lock(&mp); ...
分类:
其他好文 时间:
2014-09-27 01:40:18
阅读次数:
263
#include #include #include #include pthread_mutex_t mu;void *consumer1(void *p){ if(!pthread_mutex_lock(&mu)) printf("get mutex...
分类:
其他好文 时间:
2014-09-27 01:03:49
阅读次数:
201
??
1线程为什么要同步
A:共享资源,多个线程都可对共享资源操作。
B:线程操作共享资源的先后顺序不确定。
C:处理器对存储器的操作一般不是原子操作。
2互斥量
mutex操作原语
pthread_mutex_t
pthread_mutex_init
pthread_mutex_destroy
pthread_mutex_lock
...
分类:
编程语言 时间:
2014-09-25 20:41:07
阅读次数:
309
??
1进程间pthread_mutex
A依赖的头文件
#include
B
函数声明
intpthread_mutexattr_destroy(pthread_mutexattr_t *attr);
intpthread_mutexattr_setpshared(pthread_mutexattr_t *attr, int pshared);
int...
分类:
其他好文 时间:
2014-09-25 19:15:37
阅读次数:
211
子线程循环10次,接着主线程循环100次,接着又回到子线程循环10次,接着再回到主线程又循环100次,如此循环50次,试写出代码。#include #include #include #include pthread_attr_t attr;pthread_mutex_t mutex;pthre.....
分类:
编程语言 时间:
2014-09-23 02:26:13
阅读次数:
265
pthread_cond_wait()用于阻塞当前线程,等待别的线程使用pthread_cond_signal()或pthread_cond_broadcast来唤醒它。pthread_cond_wait()必须与pthread_mutex 配套使用。pthread_cond_wait()函数一.....
分类:
其他好文 时间:
2014-09-23 01:37:13
阅读次数:
347
情景1:Jack开着一辆出租车来到一个站点停车,看见没人就走了。过段时间,Susan来到站点准备乘车,但是没有来,于是就等着。过了一会Mike开着车来到了这个站点,Sunsan就上了Mike的车走了。如图所示:程序实现该情景:#include
#include
#include
#include
pthread_cond_t taxicond = PTHREAD_COND_INITIAL...
分类:
编程语言 时间:
2014-09-17 15:14:32
阅读次数:
288
#include #include #include #include int ticket_cnt = 20; /* 共有20张票 */typedef struct tag{ int s_id; pthread_mutex_t *s_p;}DATA,*pDATA;void* h...
分类:
编程语言 时间:
2014-09-09 12:13:48
阅读次数:
208
互斥锁是用来保护一段临界区的(每个进程中访问临界资源的那段代码称为临界区),它可以保证在某段时间内只有一个线程在执行一段代码或者访问某个资源。1. 互斥锁的初始化pthread_mutex_init(2)int pthread_mutex_init(pthread_mutex_t *restrict...
分类:
编程语言 时间:
2014-09-09 11:03:18
阅读次数:
238