我正在尝试在两个应用程序之间共享数据:第一个应用程序连续从传感器获取数据,我所需做的就是在接收数据时将这些数据传输到另一个(WPF)应用程序(并绘制图形)。
数据通过EventHandler接收,然后通过套接字进行传输,如下所示:
static TcpClient client = new TcpClient("localhost", 8181);
static double w, dba;
static void Write()
{
try
{
Stream s = client.GetStream();
StreamReader sr = new StreamReader(s);
StreamWriter sw = new StreamWriter(s);
sw.AutoFlush = true;
while (true)
{
String line = "W:" + w + "DB/A:" + dba;
sw.Write(line);
Console.WriteLine(sr.ReadLine());
}
s.Close();
}
finally
{
client.Close();
}
}
事实上,我需要将它放在单独的线程中吗?(我尝试过,但不成功)因为像这样,当事件处理程序继续触发并生成数据(将其存储到两个变量中)时,软件似乎无法继续进行。
如果问题有点模糊,很抱歉,这是我第一次尝试分布式应用程序,所以我也有些困惑...任何建议或帮助都将不胜感激!
谢谢您!