【发布时间】:2012-07-19 15:39:54
【问题描述】:
我目前正在编写一个系统日志程序,它通过 ftp 发送不同的日志。 我面临的问题是我的程序应该在上传之前和上传期间不断检查连接是否正在使用,以便在其他程序想要使用连接时停止发送数据包。
我实际上发现这个link 可以帮助我测量连接速度,但我认为我只能使用后者来发现某些内容是否已经在流式传输。 在阅读 System.Net.NetworkInformation 上的库条目后,检查各种网络统计信息和状态也不是问题。如前所述,我唯一的问题是检查是否有其他程序想要发送一些东西。
正如您可能从问题中看出的那样,我对这个主题非常陌生,并且是一个相当初级的程序员。我一直在阅读 System.Net.NetworkInformation 命名空间库并促进它的各种类、方法和委托。我有一种感觉,我在正确的轨道上,但只是没有到达那里。有人朝正确的方向推进了吗?
谢谢。
【问题讨论】:
-
您是否想到了特定的移动平台?
-
TCP/IP 支持多个同时连接(虽然,到不同的套接字);你在做什么让你需要在连接时断开连接以便另一个程序可以使用它?
-
它是windows 7或xp的嵌入式版本。基本上其他两个程序将主要使用 tcp/ip 连接。如果其他程序之一需要连接,我知道套接字只需要停止传输日志信息流即可。这可以理解吗?
-
我仍然不清楚为什么您必须断开程序才能让另一个程序使用 tcp/ip。日志服务器应该能够处理多个连接——特别是如果它是 ftp。
-
问题是带宽有限,因为数据是通过 GPRS 连接发送的,并且是位于救护车上的计算机。不担心服务器只是我将记录的程序在过去几周内无法定期发送或接收信息,没有人知道为什么。如果您建议我不应该担心带宽或完成我的日志文件的上传,这些文件是压缩的,只有大约 2-5KB 的大小。我只需要找出第 3 方软件失败的时间点。抱歉,如果我无法正确表达我的困难。
标签: c# networking tcp network-protocols windows-embedded