【发布时间】:2009-06-11 16:15:12
【问题描述】:
在问了this question 并且显然难倒了人们之后,这个想法怎么样 - 我可以将 C# 应用程序的缓冲区提供给 C++ dll,然后在 C# 中进行计时事件,只需复制缓冲区的内容出去?这样,我避免了显然发生的回调调用引起的任何延迟。这会起作用,还是编组会阻止这种缓冲区访问?或者我是否必须进入不安全模式,如果我这样做或不这样做,让它工作的神奇词是什么?
回顾另一个问题:
- 我有一个用 C++ 编写的驱动程序和一个用 C# 编写的应用程序。
- 我需要以预览方式从驱动程序获取数据。
- C++ 应用程序与 C++ dll 交互很好; C# 应用在复制数据时有很大的延迟。
- 延迟似乎不是由 C# 端的发布/调试差异引起的
- 我需要绕过延迟。这个提议的缓冲方案能奏效吗? C# 应用程序是否可以从 C++ dll 写入的缓冲区中使用,还是我需要做其他事情?
【问题讨论】:
-
考虑在原始线程中继续讨论。
-
没有人查看原始线程:)(或者抱歉,35 人查看了)。