Anhang. Strukturierter Klon-Algorithmus

Der strukturierte Klon-Algorithmus ist ein Mechanismus , den JavaScript-Engines beim Kopieren von Objekten über bestimmte APIs verwenden. Er wird vor allem bei der Weitergabe von Daten zwischen Workern verwendet, aber auch andere APIs nutzen ihn. Bei diesem Mechanismus werden die Daten serialisiert und später als Objekt in einem anderen JavaScript-Bereich deserialisiert.

Wenn Objekte auf diese Weise geklont werden, z. B. vom Haupt-Thread zu einem Worker-Thread oder von einem Worker zu einem anderen, wirkt sich die Änderung eines Objekts auf der einen Seite nicht auf das Objekt auf der anderen Seite aus. Es gibt jetzt im Grunde zwei Kopien der Daten. Der Zweck des strukturierten Klon-Algorithmus ist es, einen entwicklerfreundlicheren Mechanismus als den von JSON.stringify zu bieten und gleichzeitig vernünftige Beschränkungen aufzuerlegen.

Browser verwenden den strukturierten Klon-Algorithmus, wenn Daten zwischen Web-Workern kopiert werden. Node.js verwendet ihn ebenfalls beim Kopieren von Daten zwischen Worker-Threads. Wenn du einen .postMessage() Aufruf siehst, werden die übergebenen Daten auf diese Weise geklont. Browser und Node.js folgen denselben Regeln, aber sie unterstützen jeweils zusätzliche Objektinstanzen, die kopiert werden können.

Als Faustregel gilt: Alle Daten, die sich sauber als JSON darstellen lassen, können auf diese Weise sicher geklont werden. Wenn du dich an Daten hältst, die auf diese Weise dargestellt werden, wirst ...

Get Multithreading-Javascript now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.