基本多线程与StreamReader/StreamWriter
本文关键字:StreamWriter StreamReader 本多 多线程 | 更新日期: 2023-09-27 18:04:34
我使用StreamReader从TcpSocket读取,并使用StreamWriter向该TcpSocket写入。我想在一个线程中读取代码,在另一个线程中编写代码。我如何以线程安全的方式做到这一点?
如果我这样做,那么我猜在许多情况下,写线程将被阻塞:
lock (tcpClient) {
streamReader.ReadLine();
}
下面是编写器代码:
lock (tcpClient) {
streamWriter.WriteLine(line);
}
在一个线程上发送,在另一个线程上接收是安全的。
所以你可以在一个线程中完成:
streamReader.ReadLine();
和这个在另一个线程:
streamWriter.WriteLine(line);
不需要锁定tcpClient