.Net UDP 使用多线程

标签 .net

我有几辆车每 10 秒后通过 GPS 向服务器发送数据,服务器应该监听和解码数据以存储在数据库(Sql Server)中。每分钟将有数百个条目。我现在有一个单线程代码,这并不是很有帮助。在一个条目的处理时间内,很少有条目被丢弃。我想创建一个多线程代码,以便当一个线程忙于处理时,将数据包移动到下一个可用线程。

据我所知,在查看了几个论坛后,我意识到“产量”将有助于解决这个问题。但是我找不到关于如何使用 yield 的正确示例?

有人可以通过发布一些示例来帮助我解决这个问题吗?

最佳答案

我建议在接收上设置异步回调,然后将数据推送到队列中,然后从另一个线程上的队列中处理出来。确保锁定该队列或使用 ConcurrentQueue 以免将线程碰撞在一起。

关于.Net UDP 使用多线程,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10803424/

相关文章:

c# - Specflow:具有不同可配置步骤的相同场景

python - 如何使用 CPython 让泛型在 Python.NET 中工作

c# - 获取随机免费打开的端口进行测试

c# - .csproj 如何知道它的解决方案?

.net - 如何用 .Net 画一个点?

.net - 在 .NET 中,如何限制对私有(private)方法的访问?

c# - 必须在 cosmosdb 删除操作中为此操作提供 PartitionKey 值

.net - WPF 设计器抛出奇怪的错误

c# - 将十六进制字符串转换回字符

c# - LINQ to Entities 无法识别该方法