Thanks for replies,

I understood what's the problem here.

> The only option that comes to mind that doesn't expose compatibility issues
> would be to only issue onclose events if close() is explicitly called on the
> entangled port, but if you're doing that you might as well just have the
> code calling close() post a "I'm closing" message first.
> -atw

This would mean that all web pages using a SharedWorker (and keep
reference to MessagePort inside the SharedWorker) have to set "unload"
event handlers to call port.close() so that references to the ports in
the SharedWorker don't get accumulated. That is not desirable.
"pagehide" handler may not be sufficient for this purpose.

I think, as Hixie suggested, an array like object to track references
of all connected ports would be nice *for SharedWorkers*. For ports
created dynamically by new MessageChannel, it doesn't seem to work
well.

A. TAKAYAMA

Reply via email to