首页 > 代码库 > .NET线程同步原语
.NET线程同步原语
[独占]
用户模式 Interlock原子锁,Spinlock自旋锁
内核模式 Mutex互斥锁(那个线程获取,那个线程释放;可以跨进程)
混合模式 Monter
[信号量] 一批
内核模式 semaphore(可以跨进程)
混合模式 SemaphoreSlim(不可跨进程)
[事件通知] 一个事件
内核模式 ManualResetEvent, AutoResetEvent(可以跨进程)
混合模式 ManualResetEventSlim, AutoResetEventSlim(不可跨进程)
[其他]
内核模式可以跨进程,混合/用户模式不可跨进程。锁对象是使用(同步块索引)
Thread.Yeild 让出时间片,进入就绪状态,只能调度同一个CPU的线程,允许低优先级的线程调度
Thread.Sleep(0) 让出时间片,进入就绪状态,可以调度任何CPU的线程,但是只能是同级或高级优先级的线程
Thread.Sleep(1) 让出时间片,进入就绪状态,可以调度任何CPU的线程,但是只能是同级或高级优先级的线程,不是1毫秒,时间片的原因可能滞后
.NET线程同步原语
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。