当前位置: 首页 > 知识库问答 >
问题:

TcpListener和TcpClient共享本地端口

倪培
2023-03-14

应用程序的两个实例都有一个TcpListener,本地端口=8000。

一个应用程序实例(称为“a”)创建一个TcpClient。现在,这个客户机不能有本地端口=8000,或者构造函数抛出套接字异常“通常只允许每个套接字地址(协议/网络地址/端口)的一次使用”。

因此,我创建了带有随机本地端口的第一个客户机,并运行Connect()与另一个应用程序实例“b”连接。

“B”使用TCPListener.AcceptTCPClient()接受连接,该连接返回可用于与“a”通信的TcpClient。但是,这个TcpClient与TcpListener具有相同的IP和端口!?当我在“A”上手动创建TcpClient时不能使用相同的端口时,这怎么可能呢?我真的希望他们使用相同的端口作为监听器,在两台机器上...

那么,如何在“A”上创建与TcpListener具有相同端口的TcpClient呢?

共有1个答案

高化
2023-03-14

我认为您可能不完全理解地址端口客户机服务器体系结构。

TcpListener正在侦听地址和端口上的任何连接。建立连接后,您可以使用“套接字”接收和发送来自客户端和服务器的消息。

示例:

 类似资料:
  • 如果我们本地的项目想放到GitHub上开源,可以直接将本地项目共享到GitHub。 操作步骤: 第1步: 点击【 Share Project on GitHub 】 打开本地项目—> 菜单栏 —> Import into Version Control —> Share Project on GitHub。 第2步: 确定是本地项目 如果此项目已经在Github上,在Android Studio右

  • 公司有个老项目用的技术比较老,很难维护。我想登录后的某些新功能抽出去,重新搭建一套,但是要共享登录的后本地存储的相关信息,我该怎么做呢? 部署到线上倒是好解决,用同一个域名不同目录就可以实现。但是本地调试该如何操作做呢? 比如:老的环境用的是80端口,新的vue项目用的是8088端口。我怎么让两个项目共享本地存储的信息呢?

  • 我试图通过ACTION\u SEND intent与图像共享文本。问题是图像由URL表示,而不是本地URI。我目前拥有的代码是: 现在我已经尝试了一些变体。我尝试了setType(“image/*”),我尝试了从URL解析Uri,我尝试了传递URL字符串本身,等等。到目前为止似乎没有什么工作。但是,当发送到twitter时,我确实看到了文本,而不是图像。 编辑:显然最初的描述不够有帮助,所以...

  • 我有一个django项目与PostgreS数据库。我需要在docker容器中使用我的本地数据库。如何与docker容器共享机器的localhost?My Docker-compose.yml: Django Settings.py: 我添加了 现在我有一个错误: 谁能帮我?求求你!

  • 问题内容: 在研究共享库时,我读了一条声明 尽管共享库的代码在多个进程之间共享,但其变量却不是。使用该库的每个进程都有其在库中定义的全局变量和静态变量的副本。 我对此几乎没有疑问。 每个进程的代码部分是否在单独的地址空间中? 共享库代码部分是否在某些全局(唯一)地址空间中。 我只是一个初学者,所以请帮助我理解。 谢谢! 问题答案: 通过将文件内存映射到进程的地址空间的某些部分,可以将共享库加载到进

  • 我试图上传我的工作laravel Web应用程序从localhost到Web服务器,但我仍然有同样的问题:白色页面。但是如果我打电话给phpinfoindex.php我可以看到结果。我试图保持原始项目的相同目录结构,但当我导航到myhost.com/app/public我看到白色页面。我还尝试将公共的所有内容移动到上层目录,将路径从公共var的引导/paths.php更改为/...和从index.