问题标签 [tcplistener]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
3 回答
2921 浏览

c# - NetworkStream 如何在两个方向上工作?

我读过一个 Tcp Echo 服务器的例子,有些事情我不清楚。

当服务器接收到一个数据包(while 循环)时,他将数据读入 rcvBuffer 并将其写入流中。

让我感到困惑的是通信中消息的时间顺序。使用 netStream.Write() 写入的数据是立即发送到客户端(甚至可能仍在发送),还是仅在已经写入流(由客户端)处理的数据之后发送。

下面的问题甚至可以澄清前面的问题:如果客户端通过写入流来发送一些数据,这些数据是否移动到服务器端的消息队列中等待读取,因此流实际上是“空的”?这可以解释为什么服务器可以立即写入流 - 因为来自流的数据实际上在其他地方缓冲......?

0 投票
2 回答
12105 浏览

c# - 如何使用 TcpListener 发送数据并等待响应?

我有以下代码:

我向服务器发送一个字符串,然后等待响应。

这是正确的方法吗?

如果服务器需要一些时间来处理我发送的内容,它仍然可以工作还是 stream.Read 返回 0 并退出循环?或者如果响应中的一些数据包丢失并且需要重新发送,它仍然可以工作吗?

0 投票
5 回答
3393 浏览

c# - TCPlistener.BeginAcceptSocket - 异步问题

前段时间我付钱给一个程序员做多线程服务器。与此同时,我已经学习了一点 C#,现在我想我可以看到减速问题 - 那个人告诉我,主线程(Form)上没有处理任何东西,所以它不能被冻结..但它是。但我认为BeginAcceptSocket 是异步操作,但它的回调在主线程上运行,如果有锁定,这就是应用程序冻结的原因。我对吗? 谢谢

0 投票
3 回答
1799 浏览

network-programming - 创建 802.11 发射器并从 WiFi 路由器读取数据

这个问题有两个部分。也可以随意给我文章的 URL 或推荐书籍,因为答案可能有点深入,以便快速论坛回复。

1) 我需要感应流过一对电线的功率并通过 802.11 传输有关它的数据。我想涉及到一个微控制器,但我不知道从哪里开始。不需要安全。我只希望发射器定期广播数据(例如,每秒 1 帧)。

2) 我需要从我的 802.11 路由器中获取步骤 1 中的数据广播。我希望能够在第 1 步中对任意数量的发射器执行此操作。第 1 步中的每个发射器是否具有可以从我的 802.11 路由器中查找的特殊 ID?我什至不知道如何在我的路由器上获得一个“句柄”来查看它正在接收什么数据。所以,首先,我如何获得我的路由器,然后我如何在步骤 1 中看到来自我的发射器的这些可能的多个数据流。

谢谢,杰

0 投票
2 回答
9716 浏览

testing - 如何测试 TCP 服务器的实现?

我编写了一个 TCP 服务器实现,使用它创建了一个用作 TCP 回显服务的应用程序。

现在我想测试这个回声服务器

  • 它可以处理多少个连接
  • 什么是响应时间
  • 它使用多少内存和 CPU

请您建议任何标准方法/工具来测试此回声服务器。我知道 TCP 和 echo 服务器的实现都是相当标准的做法,所以我希望找到成熟的工具来测试它。

PS:我可以编写自己的测试应用程序,但我不想这样做,因为如果我看到一些问题,我需要确定是我的服务器做错了。我不想首先测试我的测试客户端。

我使用 C# 和 .NET 3.5 编写了这个实现,尽管我相信参考这个问题并不重要。

0 投票
4 回答
6264 浏览

c# - 无法从远程机器连接

我有一些问题,我无法在家里检查它是否工作。这是代码

我也有一个简单的程序来连接到它,然后发送一个带有数据的字符串。它在本地主机上运行良好,但是当我尝试连接不同的计算机时出现问题。

我什至关闭了我的 PC 和路由器上的防火墙,就像我在朋友的笔记本电脑上所做的那样。每次我尝试连接时,他的电脑都拒绝连接。也许我做错了什么?

当然,ipAddress现在是一个本地地址,因为它目前只使用它。有什么建议该怎么做吗?

0 投票
2 回答
17020 浏览

c# - 在 C# 中接收和发送数据

我还在努力改进我之前写的东西。现在我遇到了接收数据的问题。我有一个程序,我用它使用 tcpClient 将字符串发送到我正在侦听指定端口的程序。它工作正常,所以我决定再发送一次数据

有时它工作得很好,但更多时候,我们称它为接收器,无法得到我试图发送的东西。我真的不知道它有什么问题。看起来发送方法可能有问题。这是接收器输出的示例

0 投票
4 回答
7204 浏览

c# - 如何在 C# 中停止线程?

我已经创建了一个客户端-服务器应用程序,并且在服务器上我希望有机会停止服务器然后重新启动它。问题是我无法停止侦听 Tcp 连接的线程。

如何在 C# 中关闭线程?

谢谢。

0 投票
2 回答
1765 浏览

c# - 我怎么知道 BeginAcceptSocket 回调需要 IAsyncResult 参数?

我很好奇在哪里可以找到作为 BeginAcceptSocket 回调的 AcceptClient 需要将 IAsyncResult 作为参数。在 MSDN 文章中只提到 BeginAcceptSocket 的返回值为 IAsyncresult。但是我怎么知道它必须传递给回调?谢谢!

0 投票
1 回答
570 浏览

vb.net - 将 TCP 服务器绑定到特定的适配器

如何指定要开始侦听的适配器?

我有一个在 PC 上运行的应用程序,恰好有 2 个网络适配器在不同的子网上运行(一个网络用于商业 LAN 基础设施,一个网络用于 TCP 摄像机)

我有一个类,它打开一个 TCP 服务器并在特定端口上侦听来自 LAN 上的客户端的连接。

问题是我的 TCP 服务器类初始化并开始监听连接到摄像机的适配器。来自商务 LAN 的任何连接请求都会失败,不会得到处理。

问题是,如何指定要开始监听的适配器?

下面的代码摘录(这不是完整的类,只是关键方法)