问题标签 [networkstream]

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 投票
1 回答
8631 浏览

c# - 调用流不支持读取

我有很多匿名用户连接到的 ac# 网络应用程序(游戏服务)。

现在我检查日志,偶尔会看到这个异常:

此错误来自 NetworkStream 对象,现在我正在尝试重现该问题,但是如何?我怎样才能得到这个例外?

我尝试断开自己的连接,但这只是超时,尝试了其他事情,但无法使其正常工作。

也许有人有想法?

该文件的内容是:

0 投票
1 回答
799 浏览

c# - NetworkStream.Read 下载进度。类似于 WebClient.DownloadProgressChanged

当我使用 NetworkStream.Read 时,我想知道当前的下载进度。甚至可能吗?我必须使用网络客户端吗?

我不想使用 webclient,因为它看起来(我不是 100% 确定)

  1. 我必须创建网络服务器
  2. 我必须创建文件(而不是内存流数据)。
  3. 由于 http 协议的限制,我无法正确测量千兆网络的传输速度。

或者,我应该使用 webclient?

仅供参考,我正在构建带宽估计工具。

0 投票
3 回答
2736 浏览

c# - 即使客户端在网络流上写入数据,它在服务器上也不可用 为什么

客户端编码

服务器端编码

在将客户端数据写入流之后,服务器端的 soc.Available 也为零。所以服务器无法读取数据。问题是什么?

0 投票
3 回答
18874 浏览

java - java.io.IOException:网络文件夹上的权限被拒绝

尝试在安装在 unix 系统上的窗口文件夹上写入文件时,我遇到了帖子的标题错误。我开发了一个 Web 服务,它在 Linux 操作系统上的 Tomcat 6 内运行,需要在 Windows 网络文件夹上写入。系统管理员已将其安装在 Linux 服务器上,并且在其上创建和修改文件没有问题。当我尝试执行发布的代码时,出现以下异常:

Permission denied java.io.IOException: Permission denied at java.io.UnixFileSystem.createFileExclusively(Native Method) at java.io.File.createNewFile(File.java:850)

奇怪的是,它似乎与网络文件夹上的 File.createNewFile 方法有关,实际上该服务可以毫无问题地写入本地文件系统,无论是在调试(我用来开发服务的电脑)和 tomcat 上文件夹系统管理员在 linux 服务器上为我提供了。该文件已创建但为空,并且未打印 create 方法后面的日志条目。此外,如果我使用普通的输出流来创建和写入文件,我没有问题。

我在网上找不到有关异常的任何解释。由于我对 java 不是很有经验,我想了解为什么会出现此错误。我是否以错误的方式使用它?这是图书馆的错误吗?我想传递一些参数吗?如前所述,我已经使用普通的输出流解决了这个问题,这是一个提高我对 java 理解的问题。

提前感谢您的任何回答

0 投票
4 回答
15390 浏览

c# - C# 为什么“Flush”不强制字节流到网络流中?

我有一个项目,我试图将序列化对象发送到服务器,然后等待“OK”或“ERROR”消息返回。

我似乎遇到了与以下海报类似的问题:TcpClient 发送/关闭问题

问题是我似乎能够发送原始对象的唯一方法是关闭连接,但是(当然)我迫不及待地想看看服务器是否成功处理了对象。

更新:回应一位评论者,我认为客户不会有错。它只是在等待对象,并且对象永远不会出现,直到我关闭套接字....但是,如果我错了,我会很乐意公开吃乌鸦。=) 这是客户:

是的……就这么简单。

0 投票
2 回答
19837 浏览

c#-4.0 - TPL TaskFactory.FromAsync 与具有阻塞方法的任务

TaskFactory.FromAsync我想知道使用 TPL和使用TaskFactory.StartNew方法的阻塞版本之间是否有任何性能影响。我正在编写一个支持不超过 100 个并发连接的 TCP 服务器。在使用第一个选项编写代码并使用 continue with 链接多个读写操作之后,我留下了丑陋、难以调试的代码。

我相信用同步版本编写代码然后用任务包装它会降低复杂性并增加可测试性,但我担心这样做会影响性能。

例如,这两个调用之间是否存在任何性能差异:

0 投票
3 回答
7992 浏览

c# - C# - 要关闭 NetworkStream,请调用 stream.Close 或 socket.Shutdown?

我想知道是否有人知道处理使用 Socket 对象和 NetworkStream 对象的类的最佳方法?有问题的类有一个 NetworkStream 实例和一个用于创建 NetworkStream 的 Socket 实例。

在我的 Dispose 方法中,我应该这样做吗?

所有这些都是必要的还是矫枉过正?

0 投票
1 回答
1890 浏览

c# - 调用 System.Net.Sockets.NetworkStream.Write() 时的最大缓冲区限制是多少

调用时的最大缓冲区限制是多少

Windows 2003 32 位机器上的方法。

是否建议使用上述方法传输大文件。

问候, bse

0 投票
1 回答
2989 浏览

vb.net - 当数据应该存在时,不要从套接字获取任何数据,并且没有引发异常,连接是打开的。使用 DataAvailable 等待数据

我从 RFID 阅读器读取数据时遇到问题。我通过 tcp 连接到阅读器并等待 DataAvailable 为真,然后读取数据直到我得到数据字符的结尾。然后我就回去等待一个新的DataAvailable。这是在函数的自己的线程中完成的。

似乎有某种超时,如果我在几分钟内没有得到任何数据,那么它就在 do/loop 中等待 DataAvailable。我将卡放在 RFID 阅读器上,它发出哔哔声,但没有可用数据。我没有得到任何异常,并且信息说 clientsocket 仍然连接。还有什么我可以检查的吗?

如果我每隔一分钟将卡放到读卡器上,这似乎永远不会发生。所以 2-3 minutes idle:ing 似乎可以做到这一点。

这是我从套接字读取数据的代码,我删除了一些不相关的代码:

0 投票
2 回答
1031 浏览

c# - 如何为网络驱动器上的 File.Create 方法设置超时?

我的应用程序有一个要求,我需要在网络驱动器中创建文件,但是如果网络断开连接的应用程序挂起一段时间并引发异常,则在进行文件创建时。

有什么办法可以设置超时File.Create吗?