互斥对象(互斥对象)是为在计算机程序中使用而创建的对象。互斥对象的基本功能是使多个程序线程能够使用单个资源。通常,互斥对象的功能是通过创建一个环境来允许对单一资源的这种使用,在这种环境中,对资源的访问在程序的各...
互斥对象(互斥对象)是为在计算机程序中使用而创建的对象。互斥对象的基本功能是使多个程序线程能够使用单个资源。通常,互斥对象的功能是通过创建一个环境来允许对单一资源的这种使用,在这种环境中,对资源的访问在程序的各个方面之间不断地来回传递基本上,程序将创建互斥体,并将其与一个特定的资源相关联,该资源是开放程序有效运行所需的。当资源被调用时,操作系统将为互斥体分配一个唯一的名称,并在程序保持打开状态时使用它来标识进程。一旦互斥体为会话激活并命名,则需要此资源的程序的任何其他线程都可以访问,即使该资源已被另一个线程使用。通过指示对该资源的需要,互斥函数将开始在线程之间来回交替访问该资源。对于最终用户,这个过程是透明的。对于所有实际的意图和目的来说,似乎两个用户或两个线程正在使我们同时使用同一个资源。虽然访问传输的速度非常快,甚至对最终用户来说都不明显,但应该注意的是,无论何时使用一个资源,它都会被有效地锁定到序列中的一个线程。另一个需要使用该资源的线程将发出一个请求,该请求将进入队列并保持在队列中,直到第一个线程完成活动使用。此时,资源被解锁,互斥函数允许队列中的下一个线程活动访问如果第三个线程处于活动状态并且需要资源,MUTEX也会将该线程放入队列中,并轮流授予访问权限
-
发表于 2020-08-06 05:35
- 阅读 ( 1805 )
- 分类:电脑网络