複数ウィンドウをまたがったJavascriptマルチスレッドプログラミングについて


一般的にJSはシングルスレッドでしか動作しないとされていますが、各ウィンドウ(各タブ)が独立したプロセスで動作しているブラウザの場合、ウィンドウごとのJSは並列で動作します。

それでいて、JSからはsame-origin ruleを満たす限りはウィンドウをまたいでデータを読み書きしたり関数を呼んだりできます。(つまりこの並列性はマルチスレッドに相当します)

マルチスレッドで動作することが可能でありながら、JSには排他制御の仕組みがありません。
さて、window.openで開いたウィンドウと元ウィンドウがプログラム的に連携動作しようという場合にスレッド競合状態を回避するためのノウハウにはどういったものがありますでしょうか。

回答の条件
  • 1人5回まで
  • 登録:2014/08/26 18:23:01
  • 終了:2014/09/02 18:25:06
id:Sampo

質問者から

Sampo2014/08/27 11:36:56

window.open() だと同一プロセスでウィンドウが開くという記述を複数のブラウザについて見つけました。
しかしまだ、それが親子関係にあるウィンドウ間ではウィンドウをまたがってシングルスレッドを意味するのか、ブラウザ依存しない汎用的な仕様なのかはまだよくわかりません。

回答(0件)

回答はまだありません

コメントはまだありません

この質問への反応(ブックマークコメント)

「あの人に答えてほしい」「この質問はあの人が答えられそう」というときに、回答リクエストを送ってみてましょう。

これ以上回答リクエストを送信することはできません。制限について

絞り込み :
はてなココの「ともだち」を表示します。
回答リクエストを送信したユーザーはいません