c#和VB.NET之间的线程转换
本文关键字:线程 转换 之间 NET VB | 更新日期: 2023-09-27 18:08:39
我想把下面的c#代码转换成VB。净
public byte[] TextToBytes(string textToSpeak)
{
byte[] byteArr = null;
var t = new System.Threading.Thread(() =>
{
SpeechSynthesizer ss = new SpeechSynthesizer();
using (MemoryStream memoryStream = new MemoryStream())
{
ss.SetOutputToWaveStream(memoryStream);
ss.Speak(textToSpeak);
byteArr = memoryStream.ToArray();
}
});
t.Start();
t.Join();
return byteArr;
}
我尝试了各种各样的东西,并使用了一个在线转换器,但即使是在线转换器也不确定如何处理线程的事情。
有谁能伸出援助之手吗?谢谢你!c#中的() =>
表示lambda表达式。在VB中,根据是否返回值,用Function()
或Sub()
表示。
Dim t = New System.Threading.Thread(Sub()
Dim ss As New SpeechSynthesizer()
Using memoryStream As New MemoryStream()
ss.SetOutputToWaveStream(memoryStream)
ss.Speak(textToSpeak)
byteArr = memoryStream.ToArray()
End Using
End Sub)