VerySource

 找回密码
 立即注册
搜索
热搜: 活动 交友 discuz
查看: 720|回复: 3

tcp通讯,为什么执行AcceptTcpClient()的时候没有响应呢?

[复制链接]

1

主题

1

帖子

2.00

积分

新手上路

Rank: 1

积分
2.00
发表于 2020-1-16 09:20:02 | 显示全部楼层 |阅读模式
刚学习tcp通讯,但下面的代码老是没有响应,为什么?
TcpListener tcplistener = new TcpListener(IPAddress.Parse("127.0.0.1"),13);
tcplistener.Start();
byte[] btServerReceive = new byte[256];
string strServerReceive = string.Empty;

while (true)
{
    TcpClient tcp = tcplistener.AcceptTcpClient();
    NetworkStream ns = tcp.GetStream();
    int intReceiveLength = ns.Read(btServerReceive, 0, btServerReceive.Length);
    strServerReceive = UnicodeEncoding.Unicode.GetString(btServerReceive, 0, intReceiveLength);
    txtServerResult.AppendText("ServerReceive:" + strServerReceive + " ");
    ns.Write(btServerReceive, 0, btServerReceive.Length);
    txtServerResult.AppendText("ServerSend:" + strServerReceive + " ");
    tcp.Close();
}
回复

使用道具 举报

0

主题

14

帖子

7.00

积分

新手上路

Rank: 1

积分
7.00
发表于 2020-2-10 12:15:02 | 显示全部楼层

建议先查查MSDN

AcceptTcpClient()是一直阻塞的 直到有客户端执行Connect 你单单执行这一块代码 到AcceptTcpClient()没有响应才是最正常的了

回复

使用道具 举报

0

主题

1

帖子

2.00

积分

新手上路

Rank: 1

积分
2.00
发表于 2020-8-20 00:15:01 | 显示全部楼层
要等client发消息过来了才有响应,所以最好放在一个线程里
回复

使用道具 举报

0

主题

1

帖子

2.00

积分

新手上路

Rank: 1

积分
2.00
发表于 2020-8-25 19:45:01 | 显示全部楼层
看看,觉得没看懂你那是啥代码
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

Archiver|手机版|CopyRight © 2008-2023|verysource.com ( 京ICP备17048824号-1 )

快速回复 返回顶部 返回列表