【问题标题】:Ipworks data lossIpworks 数据丢失
【发布时间】:2013-08-09 17:26:06
【问题描述】:

我使用 ipworks 的 ipport 组件。当触发 datain 事件时,我将数据放入队列中,然后在不同的线程中处理它。数据来得太快了,我相信传入的数据丢失了。我该如何解决这个问题?

【问题讨论】:

  • 要么增加缓冲区的大小,要么更快地处理数据,或者两者兼而有之。
  • 你考虑过修改线程的优先级吗?我有一个应用程序,其中读取线程具有最大优先级,而进程线程处于正常优先级,它对我来说很好。

标签: c# sockets ipworks


【解决方案1】:

我不确定数据丢失的确切位置,但 DataIn 事件将提供所有传入数据,之后会发生什么取决于您。

我为 nsoftware 工作,如果您想通过电子邮件向我们的支持团队 (support@nsoftware.com) 发送您的代码和任何其他详细信息,我们将很乐意查看。

【讨论】:

  • 我的猜测是,当下一个事件触发时,他仍在处理以前的事件。这可能会导致数据丢失(可能来自他的代码,即使您的代码处理了它)。正如我在 cmets 中提到的,解决方案是缓冲数据(更多)或更快地处理数据(或两者兼而有之)。
猜你喜欢
  • 2016-07-05
  • 2023-04-02
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2012-11-13
  • 2019-01-28
相关资源
最近更新 更多