Le Thu, Apr 03, 2003, à 04:18:01PM -0600, Lars Clausen a écrit:
> It might be easier on Win32, which is more single-user oriented. If there
> are other (Unix) programs that do this *well*, we could follow their example.
Trust me, it is not very hard to do it on Win32, but it's very easy to mess
up too....
Mozilla has the concept of remotes; I don't know how they do it. Don't count
on me to link NSPR into dia :-)
One idea, which would have a couple of platform-specific bits but maybe not
that much (and couly be left disabled on the other platforms) would be to
put a small SHM area:
struct SharedRemote {
volatile unsigned long serial
char filename[1024 - sizeof(unsigned long)]);
};
new instance first tries to open the SHM area.
if fails:
runs normally (first instance)
else:
strcpies the filename and increments serial
We'd just need one simple timer in the main instance, to read the serial
from time to time, and open a new diagram if needed.
(OK, this may break horribly on SMP -- make this volatile counter an
atomically incremented counter)
-- Cyrille
--