【问题标题】:How to share fast memory between a C# process and a unmanaged C process?如何在 C# 进程和非托管 C 进程之间共享快速内存?
【发布时间】:2013-11-18 08:45:14
【问题描述】:

我想实现一个由两个过程组成的解决方案(VS2010): - “实时图像处理”过程,在 C++ 非托管中使用 OpenCV。 - 以及一个 Windows GUI 进程,友好且美观,由 C# 管理。

C++ 进程必须是 FAST(高优先级性能),而 C# 只是一个好看的窗口显示(低优先级性能)... 这个想法是在进程之间共享必要的数据..

要共享的数据可以是一些预览实时视频、一些图像和一些值(图像处理的结果)。

如果有人有一些代码行可以分享或帮助,我将不胜感激..

【问题讨论】:

  • 在 Windows 中跨进程共享内存的典型方法是使用memory mapped file。当然,您还需要.NET API
  • @Jim:这看起来是一个非常好的答案。
  • 不清楚为什么需要两个进程...为什么不将 C++ 代码作为 DLL 在进程中加载​​?每个线程分配优先级...

标签: c# opencv memory unmanaged shared


【解决方案1】:

在 Windows 中跨进程共享内存的典型方法是使用memory mapped file。当然,您还需要.NET API

【讨论】:

    猜你喜欢
    • 2023-03-31
    • 2016-10-09
    • 2021-11-04
    • 1970-01-01
    • 2010-11-15
    • 1970-01-01
    • 1970-01-01
    • 2021-12-12
    • 2020-02-27
    相关资源
    最近更新 更多