Asynqueue:在C#中使用轻量级线程和消息传递的示例

时间:2024-06-08 02:49:27
【文件属性】:

文件名称:Asynqueue:在C#中使用轻量级线程和消息传递的示例

文件大小:485KB

文件格式:ZIP

更新时间:2024-06-08 02:49:27

C#

异步 这是在.NET中的任务之间传递消息的简单机制。 这是一个幼稚但快速的参与者模型实现。 通过Nuget获取它: Install-Package Asynqueue 表现 这在我的笔记本电脑(i7 2.4Ghz)上表现很好。 它能够在575毫秒内处理100万条消息(和响应)。 相比之下,使用DataFlow的相同实现是在1400毫秒内发送10万条消息。 或在4000毫秒内使用Stact 10k。 为了公平对待DataFlow和Stact,这些是更强大的解决方案。 无论如何,在VS的调试模式下,性能会显着下降(数量级)。 我不确定为什么,但是我并不在乎,因为性能仅在我不在IDE中运行时才重要。 更详细的性能测试可以在。 异步 Asynqueue类用于向参与者发送消息。 任意数量的进程可以将消息发送到异步,但是只有一个进程可以拥有(接收)任何给定的异步。 因此,让我们定义一个


【文件预览】:
Asynqueue-master
----Asynqueue.0.0.2.nuspec(803B)
----Asynqueue.Tests()
--------Asynqueue.Tests.csproj(6KB)
--------AsynqueueTests.cs(1KB)
--------packages.config(585B)
--------QueriableAsynqueueTests.cs(2KB)
--------Properties()
----go()
--------chanperf.go(2KB)
--------readme.md(1KB)
----Asynqueue.Console()
--------Program.cs(4KB)
--------app.config(158B)
--------Properties()
--------Asynqueue.Console.csproj(3KB)
----Asynqueue()
--------AsynqueueAwaitable.cs(2KB)
--------Asynqueue.csproj(3KB)
--------Properties()
--------IAwaitable.cs(808B)
--------QueriableAsynqueue.cs(2KB)
--------Asynqueue.cs(1KB)
--------Asynquery.cs(2KB)
----.gitignore(2KB)
----.nuget()
--------NuGet.exe(1.58MB)
--------NuGet.targets(7KB)
--------NuGet.Config(164B)
----readme.md(4KB)
----Asynqueue.sln(2KB)

网友评论