我在写一个实时库,它导出一个标准接口(VST)并由外部应用程序托管。最快的IN PROCESS技术在win32/C/C++中共享内存和IPC
库必须发布一个表,这个表可以被同一进程中的任何线程看到(如果它知道在哪里看的话) - 要清楚的是,这个表必须可以被进程空间中的所有dll查看 - 如果他们知道在哪里看。
访问表必须快。虚拟内存看起来像是矫枉过正,并且我已经考虑过使用窗口句柄(并且我仍然可以)向消息泵发送消息,但是如果可用的话,我宁愿采用更快的方法。
另外,如果可能的话,PE中的共享数据段是我想避免的。我想我宁愿使用窗户把手。
我现在不关心同步,我可以在事后处理。我只想提供一些关于最快技术在流程空间内发布表的建议。
为什么要使用消息泵?您可以轻松使用全局变量并使用库导出的一些漂亮的界面函数将其隐藏起来。你能详细阐述一下你的需求和标准化接口(VST)吗? – 2012-01-31 19:53:27
咦?进程中的所有内存都可以被该进程的所有线程访问。如果您需要在不同的进程之间共享内存,则使用共享内存。 – 2012-01-31 20:17:06
我有点担心当你开始关注同步时会发生什么。 – 2012-01-31 22:01:40