(34)--5.4 线程同步-互斥量.pptVIP

  • 1
  • 0
  • 约1.76千字
  • 约 16页
  • 2023-11-20 发布于陕西
  • 举报
线程同步-互斥量 学习目标掌握使用互斥量进行线程之间的同步 线程同步线程共享进程空间内的资源, 这使得线程之间的通信变得非常容易。 但同样是由于共享资源, 因此在多线程并发执行的环境中就有可能出现操作冲突的情况。 本节将介绍使用互斥量进行线程之间的同步操作, 使线程在访问共享资源时受到用户的控制, 从而正常地完成任务。 互斥量互斥量是一种锁, 在访问共享资源时对其加锁, 在结束访问时释放锁。 这样可以保证在任意时间内, 只有一个线程处于临界区内。任何想要进入临界区的线程都要对锁进行测试, 如果该锁已经被某一个线程所持有, 则测试线程会被阻塞, 直到该锁被释放, 线程会重复上述过程。在线程没有释放锁之前, 所有试图进入临界区的线程都将被阻塞, 形成一个阻塞线程的队列 互斥量Linux环境下使用pthread_mutex_t数据类型表示互斥量,用户不需要了解该类型的实现细节,在使用互斥量之前要对其进行初始化。Linux环境下使用ptbread_mutex_init()函数对互斥量进行初始化。函数原型如下:#includepthread.hInt pthread_mutex_init(pthread_mutex_t *restrict mutex,const pthread_mutexattr *restrict attr); 互斥量函数的第 1 个参数是互斥量的指针, 互斥量在该函数内

文档评论(0)

1亿VIP精品文档

相关文档