[gmpi] Re: Topic 3: Cross platform

  • From: Paul Davis <paul@xxxxxxxxxxxxxxxxxxxxx>
  • To: gmpi@xxxxxxxxxxxxx
  • Date: Wed, 05 Mar 2003 14:20:06 -0500

>Yes, except that many languages allocate memory themselves for normal
>runtime stuff (Java especially, but C++ too), and I don't know that all of
>them allow you to reroute the memory allocations the runtime does..??

C++ does. just override std::operator new() and you're done. 

in truth, since most of these language-specific allocators ultimately
devolve to calling C's malloc(), you can do an awful lot by just
including a malloc() implementation as part of the host SDK.

i routinely link most of my apps against libhoard, an amazingly fast
multithread-aware malloc implementation. by making it the last library
linked before hitting the standards, i pretty much ensure that
everything that allocates from the heap goes through libhoard.

that said, i think that mandating explicit host-based allocation is
the best way to handle the worst cases. people doing C++ STL operations in
the main "process" callback will have to understand why they cause
dropouts very occasionally, and come to grips with STL Allocator
objects :)


----------------------------------------------------------------------
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: