[gmpi] Re: Req 76,78

  • From: "Didier Dambrin" <didid@xxxxxxxxx>
  • To: <gmpi@xxxxxxxxxxxxx>
  • Date: Tue, 8 Feb 2005 13:55:23 +0100




On Tuesday 08 February 2005 12.28, Didier Dambrin wrote:
[...]
The evidence is that interprocess communication sucks & is not
efficient, no one does that unless there's no other choice.

That's the kind of programming style you learn when you're stuck with a broken OS... Perfectly understandable, of course; theory is irrelevant when you need to get the job done, and the "right" tools are unavilable or broken.


then go tell to windows users that their OS is broken and that GMPI isn't for them..




Either way, if the OS provided IPC sucks for one reason or another,
there is (usually) shared memory and (always) lock-free
synchronization.

You *will* need synchronization of one form or another when doing it
in the same process as well - even if it's implicity by means of your
code being inherently thread safe.


interthread communication is extremely efficient under windows, and definitely the right choice




And that all it does is make coding a lot harder.

And you can avoid the synchronization issues when you're in the same thread...?


it's your own code communicating to your own code passing by the host that's a lot harder than a direct communication




It might be very clever under OSX or linux, I have no idea. But it's
totally not under windows.

So we're assuming that Windows will remain broken forever.


it's not broken, it's very protected


Fine; then we'll just roll our own local IPC solution based on shared
memory (Windows does have *that*, I hope...), lock-free


shared memory? it's THE way to do interprocess communication anyway under windows (memory-mapped files), I don't even know another good way.


synchronization and/or whatever reasonably useable IPC APIs there
are.

Can't do much about communication accross networks that way, but well,
maybe Windows in it's current state, is just not the right platform
if you want to build processing farms or control outboard devices
with high bandwidth requirements. Are we going to ditch the whole
idea because one platform is currently broken and can't do it very
well...?


I think that you should limit GMPI to OSX & linux, because anyway they don't seem to work the same as windows, and you'll obviously end up with the many weird, non-windows compliant things that I saw in both VST & ReWire SDK's & VSTGUI. Sending keystrokes through plugin messages.. bah!





---------------------------------------------------------------------- Generalized Music Plugin Interface (GMPI) public discussion list Participation in this list is contingent upon your abiding by the following rules: Please stay on topic. You are responsible for your own words. Please respect your fellow subscribers. Please do not redistribute anyone else's words without their permission.

Archive: //www.freelists.org/archives/gmpi
Email gmpi-request@xxxxxxxxxxxxx w/ subject "unsubscribe" to unsubscribe

Other related posts: