我正在浏览下面链接中给出的互斥锁概念和代码。
https://docs.microsoft.com/en-us/dotnet/api/system.threading.mutex?view=netcore-3.1
任何人都可以让我知道是否有任何强制线程以FIFO方式执行的方法,即请求锁的线程应首先获取锁。
是否有代码示例,例如实现用于强制FIFO的多线程请求锁定的队列?
例如: 线程A,线程B,线程C是正在运行的线程。
线程A请求了互斥锁,并获得了锁。
现在线程B首先出现,等待获取锁。
一段时间后,线程C也来了,开始等待获取锁。
但是令人惊讶的是,CLR将迎合线程C而不是线程B。
有什么办法,按照上面的示例,如果我看到FIFO的话,顺序应该是线程A,线程B和线程C,但是由于某些原因执行了线程A,线程C和线程C。