setTimeout (0) vs window.postMessage vs MessagePort.postMessage

Al parecer, utilizandowindow.postMessage es unforma preferida para poner en cola una devolución de llamada javascript asíncronawindow.setTimeout(fn, 0) En todos los navegadores modernos. No pude encontrar una comparación similar entrewindow.postMessage yMessagePort.postMessage (usando el mismoMensaje canal para enviar y recibir mensajes de forma asíncrona). ¿Alguien ha visto o hecho algún tiempo? HaceMessagePort.postMessage ¿Trabajar para este propósito en absoluto (donde esté disponible)?

[Editado] MessagePort.postMessage funciona para esto, perowindow.postMessage sigue siendo una forma preferida, OMI (ver mi respuesta).

Respuestas a la pregunta(1)

Su respuesta a la pregunta