2015-08-13

Emscriptenがpthreadを実験的にサポート

Emscripten gains experimental pthreads support! - Google Groups

Emscrptenがpthreadを実験的にサポートしたそうだ。

JavaScript上でスレッドを実装する上で障害になるのは、スレッドに相当する方法が存在しないということだ。Web Workerは実行媒体ごとに隔離されて、メッセージパッシングで他の実行媒体と通信をする仕組みになっている。これは同じメモリに複数の実行媒体からアクセスするというスレッドとは異なり、プロセスに近い。

現在、JavaScript上で共有メモリを扱えるようにしようというドラフト規格、SharedArrayBufferが議論中であり、Firefox Nightlyが実験的実装を進めている。この機能を用いて、Emscriptenでpthreadを実験的に実装したそうだ。

ドワンゴ広告

この記事はドワンゴ勤務中に書かれた。

ドワンゴは本物のC++プログラマーを募集しています。

採用情報|株式会社ドワンゴ

CC BY-ND 4.0: Creative Commons — Attribution-NoDerivatives 4.0 International — CC BY-ND 4.0

2 comments:

  1. JSは本格的にC/C++とLispの相の子になっていっていますね。
    最近の基調だとバリアント型変数は容認されるんでしょうかね。
    Cを作ったのはパフォーマンスのためだったと思いますが、
    JSでもそれくらいのパフォーマンスを約束できるようになってきているのでしょうか。
    技術の進歩は素晴らしいですね。

    BASICからCを使いだしたとき、なんでこんなこともできないんだとよく思いました。
    それから幾年かでやっとBASICを超えることができそうですね。
    哀愁を感じます。
    まぁ、バリアント型使ってると物事がフュージョンしてってどんどんメタ化していくので、思考が汚くなるんですよね。
    それはやっぱ使用者を選ぶと思います。

    ReplyDelete
  2. typo s/Emscrpten/Emscripten/

    ReplyDelete

You can use some HTML elements, such as <b>, <i>, <a>, also, some characters need to be entity referenced such as <, > and & Your comment may need to be confirmed by blog author. Your comment will be published under GFDL 1.3 or later license with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts.