我需要检查我的客户端缓冲区中是否有东西,所以我没有等待写它。
private async void ThreadMethod_ListenClient()
{
while (true) {
if (ClientQueue.Count == 0)
continue;
Client client = (Client)ClientQueue.Dequeue ();
if (client.Reader != null) {
string Say = await client.Reader.ReadLineAsync();
if (Say != null) {
if (Say.Length != 0) {
Console.WriteLine (Say);
}
}
}
ClientQueue.Enqueue (client);
}
}
client.Reader:来自TcpClient的StreamReader
client.Socket:TcpClient
如何检查“ client.Reader”是否为空?
肥胖C#和Mono
最佳答案
当到达文件末尾或没有内容可读取时,StreamReader.Peek()
也会返回-1
。
可以检查如下:
while(StreamReader.Peek() != -1){
//Your code here
}