unified_concurrency.zip

上传者: mzl87 | 上传时间: 2021-08-04 14:03:31 | 文件大小: 32KB | 文件类型: ZIP
统一并发框架旨在提供简单易用的同步原语,设计时考虑到OOP原则,并为一般和async/await线程场景提供接口和基于模式的方法。实现的同步原语包括通用线程锁定、自旋锁定、票据自旋锁定、异步锁定、异步自旋锁定和异步票据自旋锁定。统一并发框架以这样的方式开发,以允许在源代码的有限更改(通常为一行)的情况下灵活更改同步原语。

文件下载

资源详情

[{"title":"( 34 个子文件 32KB ) unified_concurrency.zip","children":[{"title":"UnifiedConcurrency.SynchronizationPrimitives","children":[{"title":"UnifiedConcurrency.SynchronizationPrimitives.sln <span style='color:#111;'> 1.16KB </span>","children":null,"spread":false},{"title":"AsyncSpinLockUC","children":[{"title":"AsyncSpinLockUC.TryEnterTest.cs <span style='color:#111;'> 1009B </span>","children":null,"spread":false},{"title":"AsyncSpinLockUC.EnterTest.cs <span style='color:#111;'> 935B </span>","children":null,"spread":false},{"title":"AsyncSpinLockUC.TryEnterDelayTest.cs <span style='color:#111;'> 1.07KB </span>","children":null,"spread":false}],"spread":true},{"title":"ATestingJobAsync.cs <span style='color:#111;'> 1.62KB </span>","children":null,"spread":false},{"title":"LockUC","children":[{"title":"LockUC.EnterTest.cs <span style='color:#111;'> 907B </span>","children":null,"spread":false},{"title":"LockUC.TryEnterTest.cs <span style='color:#111;'> 916B </span>","children":null,"spread":false},{"title":"LockUC.TryEnterDelayTest.cs <span style='color:#111;'> 1020B </span>","children":null,"spread":false}],"spread":true},{"title":"AsyncTicketSpinLockUC","children":[{"title":"AsyncTicketSpinLockUC.EnterTest.cs <span style='color:#111;'> 965B </span>","children":null,"spread":false}],"spread":true},{"title":"MonitorLockUC.InternalAccessOnly","children":[{"title":"MonitorLockUC.EnterTest.cs <span style='color:#111;'> 1.43KB </span>","children":null,"spread":false},{"title":"MonitorLockUC.TryEnterDelayTest.cs <span style='color:#111;'> 1.54KB </span>","children":null,"spread":false},{"title":"MonitorLockUC.TryEnterTest.cs <span style='color:#111;'> 1.44KB </span>","children":null,"spread":false}],"spread":true},{"title":"AsyncLockUC","children":[{"title":"AsyncLockUC.EnterTest.cs <span style='color:#111;'> 915B </span>","children":null,"spread":false},{"title":"AsyncLockUC.TryEnterDelayTest.cs <span style='color:#111;'> 1.05KB </span>","children":null,"spread":false},{"title":"AsyncLockUC.TryEnterTest.cs <span style='color:#111;'> 989B </span>","children":null,"spread":false}],"spread":true},{"title":"AsyncSemaphoreSlimLockUC","children":[{"title":"AsyncSemaphoreSlimLockUC.EnterTest.cs <span style='color:#111;'> 980B </span>","children":null,"spread":false},{"title":"AsyncSemaphoreSlimLockUC.TryEnterDelayTest.cs <span style='color:#111;'> 1.11KB </span>","children":null,"spread":false},{"title":"AsyncSemaphoreSlimLockUC.TryEnterTest.cs <span style='color:#111;'> 1.03KB </span>","children":null,"spread":false}],"spread":true},{"title":"SpinLockUC","children":[{"title":"SpinLockUC.TryEnterTest.cs <span style='color:#111;'> 936B </span>","children":null,"spread":false},{"title":"SpinLockUC.TryEnterDelayTest.cs <span style='color:#111;'> 1.02KB </span>","children":null,"spread":false},{"title":"SpinLockUC.EnterTest.cs <span style='color:#111;'> 927B </span>","children":null,"spread":false}],"spread":true},{"title":"UnifiedConcurrency.SynchronizationPrimitives.csproj <span style='color:#111;'> 593B </span>","children":null,"spread":false},{"title":"SemaphoreSlimLockUC","children":[{"title":"SemaphoreSlimLockUC.EnterTest.cs <span style='color:#111;'> 972B </span>","children":null,"spread":false},{"title":"SemaphoreSlimLockUC.TryEnterDelayTest.cs <span style='color:#111;'> 1.06KB </span>","children":null,"spread":false},{"title":"SemaphoreSlimLockUC.TryEnterTest.cs <span style='color:#111;'> 981B </span>","children":null,"spread":false}],"spread":true},{"title":"TicketSpinLockUC","children":[{"title":"TicketSpinLockUC.EnterTest.cs <span style='color:#111;'> 957B </span>","children":null,"spread":false}],"spread":true},{"title":"ITestingJob.cs <span style='color:#111;'> 244B </span>","children":null,"spread":false},{"title":"SemaphoreLockUC","children":[{"title":"SemaphoreLockUC.TryEnterTest.cs <span style='color:#111;'> 961B </span>","children":null,"spread":false},{"title":"SemaphoreLockUC.TryEnterDelayTest.cs <span style='color:#111;'> 1.04KB </span>","children":null,"spread":false},{"title":"SemaphoreLockUC.EnterTest.cs <span style='color:#111;'> 952B </span>","children":null,"spread":false}],"spread":false},{"title":"ATestingJob.cs <span style='color:#111;'> 1.60KB </span>","children":null,"spread":false},{"title":"MutexLockUC.InternalAccessOnly","children":[{"title":"MutexLockUC.TryEnterTest.cs <span style='color:#111;'> 1.43KB </span>","children":null,"spread":false},{"title":"MutexLockUC.EnterTest.cs <span style='color:#111;'> 1.42KB </span>","children":null,"spread":false},{"title":"MutexLockUC.TryEnterDelayTest.cs <span style='color:#111;'> 1.53KB </span>","children":null,"spread":false}],"spread":false}],"spread":false}],"spread":true}]

评论信息

免责申明

【只为小站】的资源来自网友分享,仅供学习研究,请务必在下载后24小时内给予删除,不得用于其他任何用途,否则后果自负。基于互联网的特殊性,【只为小站】 无法对用户传输的作品、信息、内容的权属或合法性、合规性、真实性、科学性、完整权、有效性等进行实质审查;无论 【只为小站】 经营者是否已进行审查,用户均应自行承担因其传输的作品、信息、内容而可能或已经产生的侵权或权属纠纷等法律责任。
本站所有资源不代表本站的观点或立场,基于网友分享,根据中国法律《信息网络传播权保护条例》第二十二条之规定,若资源存在侵权或相关问题请联系本站客服人员,zhiweidada#qq.com,请把#换成@,本站将给予最大的支持与配合,做到及时反馈和处理。关于更多版权及免责申明参见 版权及免责申明