gpt4 book ai didi

c# - StreamReader/StreamWriter 的基本多线程

转载 作者:行者123 更新时间:2023-11-30 21:13:12 25 4
gpt4 key购买 nike

我正在使用 StreamReader 从 TcpSocket 读取数据,并使用 StreamWriter 写入该 TcpSocket。我想在一个线程中读取代码,在另一个线程中写入代码。我如何以线程安全的方式执行此操作?

如果我执行以下操作,那么我猜测在很多情况下写入线程将被阻塞:

lock (tcpClient) {
streamReader.ReadLine();
}

编写器代码如下:

lock (tcpClient) {
streamWriter.WriteLine(line);
}

最佳答案

在一个线程上发送并在另一个线程上接收是安全的。

因此您可以在一个线程中执行此操作:

streamReader.ReadLine();

这是在另一个线程中:

streamWriter.WriteLine(line);

无需锁定 tcpClient

关于c# - StreamReader/StreamWriter 的基本多线程,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6962192/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com