c# – 优先级写入者访问共享资源?

c# – 优先级写入者访问共享资源?,第1张

概述.NET框架是否能够以某种方式实现对共享资源的访问,以致某些尝试访问该资源的Writer优先于其他资源? 我的问题有以下限制: 1.只能授予对资源的1个并发写入请求 2.有许多作家等待访问这个资源,但有些作家优先于其他作家(低优先级作家的饥饿是可以的). 3.线程亲和力是一项非要求.一个线程可以设置锁定,但另一个线程可以重置它. 4.所有Writer线程都来自同一个进程. 简而言之,我需要一个暴露 .NET框架是否能够以某种方式实现对共享资源的访问,以致某些尝试访问该资源的Writer优先于其他资源?

我的问题有以下限制:
1.只能授予对资源的1个并发写入请求
2.有许多作家等待访问这个资源,但有些作家优先于其他作家(低优先级作家的饥饿是可以的).
3.线程亲和力是一项非要求.一个线程可以设置锁定,但另一个线程可以重置它.
4.所有Writer线程都来自同一个进程.

简而言之,我需要一个暴露其等待队列的原语,并允许对其进行修改访问.如果没有任何这样的东西,有关如何继续为自己构建一个的提示,使用已经可用的类,如Semaphore?

解决方法 使用优先级队列来保留挂起的请求列表.见: Priority queue in .Net. 使用stanadrd Monitor功能来锁定并发出信号,如kenny所建议的那样. 总结

以上是内存溢出为你收集整理的c# – 优先级写入者访问共享资源?全部内容,希望文章能够帮你解决c# – 优先级写入者访问共享资源?所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/langs/1227767.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-06-05
下一篇 2022-06-05

发表评论

登录后才能评论

评论列表(0条)

保存