在过去的几个小时里,我一直在努力让 BlockingCollection 的基本实现工作。我似乎一辈子都找不到 VB.NET 教程,所以一直在尝试从 C# 教程中获得一些有用的东西。
我只是想让一个基本的实现工作,这样我就可以继续做我真正需要的事情。但我被困住了。
这是我目前的代码:
Dim blockingCollection As BlockingCollection(Of String) = New BlockingCollection(Of String)
Dim count As Integer = 0
Task.Factory.StartNew(Sub()
While (True)
blockingCollection.Add("value" + count)
count = count + 1
End While
End Sub)
Task.Factory.StartNew(Sub()
For Each value As String In blockingCollection.GetConsumingEnumerable()
Debug.Print("Worker 1: " + value)
Next
End Sub)
运行此程序我没有得到任何输出,只有以下例外:
mscorlib.dll 中出现“System.FormatException”类型的第一次机会异常 Microsoft.VisualBasic.dll 中出现“System.FormatException”类型的第一次机会异常 Microsoft.VisualBasic 中出现“System.InvalidCastException”类型的第一次机会异常.dll
在过去的几个小时里,我一直在谷歌上搜索,试图解决这个问题,但无济于事。希望这里有人可以提供帮助。
谢谢