Closed mokele closed 9 years ago
It's a bug. I'm on it.
cheers Ulf!
works great, thanks Ulf. I'm assuming in the future a separate ets table of monitored awaiting pids would be more efficient than the lookup-on-every-remove that is necessary due to the ensure monitored code being reused between the two different use-cases "monitor awaiting processes", and "monitor processes we have registered", but I guess that's a design decision to treat all processes that deal with gproc the same way.
Yes, I have it on my todo list to separate the accesses, not least to reduce the contention on the ets table, but also to try to minimize the work done in the server process.
As you can see in the example above, the entry for
{{n,g,myproc},n},<0.193.0>,undefined}
has been deleted and the g and notify list entries are still sitting around by themselves and are no use to anyone since the{Key,n}
entry has been deleted.Here is the same example with some helpful debugging printouts: