发展历程 什么是互斥(互斥)? -技术百科的定义

什么是互斥(互斥)? -技术百科的定义

目录:

Anonim

定义-互斥(Mutex)是什么意思?

互斥(mutex)是防止同时访问共享资源的程序对象。 此概念用于关键部分的并发编程中,关键部分是一段代码,进程或线程在其中访问共享资源。 一次只有一个线程拥有该互斥锁,因此在程序启动时会创建具有唯一名称的互斥锁。 当线程拥有资源时,它必须将互斥锁与其他线程锁定,以防止并发访问资源。 释放资源后,线程将解锁互斥锁。

Techopedia解释了互斥(Mutex)

当两个线程同时处理同一数据时,互斥体就会出现。 它充当锁,是最基本的同步工具。 当线程尝试获取互斥锁时,它将获得互斥锁(如果可用),否则将其设置为睡眠状态。 互斥使用排队和上下文切换来减少等待时间和繁忙等待。 Mutex可以在硬件和软件级别上执行。

禁用最少数量的指令中断是在内核级别强制执行互斥并防止破坏共享数据结构的最佳方法。 如果多个处理器共享同一内存,则将设置一个标志,以根据可用性启用和禁用资源获取。 繁忙等待机制在软件区域中强制执行互斥。 它配备有Dekker算法,黑白烘焙算法,Szymanski算法,Peterson算法和Lamport烘焙算法等算法。

可以定义互斥的读取器和读/写互斥锁类代码,以有效实现互斥锁。

什么是互斥(互斥)? -技术百科的定义