タグ

2012年7月10日のブックマーク (4件)

  • Concurrent.Thread.jsで遊んでみる - Islands in the byte stream (legacy)

    JavaScriptでマルチスレッドプログラミングを実現するライブラリ Concurrent.Thread.js を触ってみた。このライブラリは Concurrent.Thread.Http を利用してAjaxプログラミングを楽にするために開発されたものらしい。 コードは以下のとおり。 http://jsdo.it/__gfx__/thread-example (app) http://jsdo.it/__gfx__/jsthread (library) function hello(id) { document.write("[" + id + "] " + "hello,<br />"); Concurrent.Thread.sleep(id * 1000); document.write("[" + id + "] " + "world!<br />"); } Concurrent.

    Concurrent.Thread.jsで遊んでみる - Islands in the byte stream (legacy)
    gfx
    gfx 2012/07/10
    blogged
  • JavaScriptによるマルチスレッドの実現‐Concurrent.Threadの裏側

    function f ( ) { do_something(); do_another(); do_one_more(); } このプログラムでは順番に3つの関数を呼び出していますが、各関数呼び出しの間でいったんスレッドの実行権を他のJavaScriptコードに渡したいとします。これは次のように、各関数呼び出しをそれぞれ別の関数に分けて、間にsetTimeoutを挿むようにプログラムを書き換えることで実現できます。 function f ( ) { do_something(); setTimeout(f1, 1);  // 1ミリ秒後にf1を呼び出す } function f1 ( ) { do_another(); setTimeout(f2, 1); } function f2 ( ) { do_one_more(); } こうして書き換えた関数fを、 f(); f(); のようにし

    JavaScriptによるマルチスレッドの実現‐Concurrent.Threadの裏側
    gfx
    gfx 2012/07/10
    FunctionをtoString()してソースコードを得て、それを解析してCPS変換してeval()で再構築か。
  • JavaScript Performance For Madmen

    You signed in with another tab or window. Reload to refresh your session. You signed out in another tab or window. Reload to refresh your session. You switched accounts on another tab or window. Reload to refresh your session. Dismiss alert

    JavaScript Performance For Madmen
  • Data URI化した画像とその再利用性

    Data URI化した画像はHTTPリクエストの削減に大いに役に立つので積極的に使って良いと思う。けど、CSSにおいて変数が使えないことなどの理由からその再利用性は低いため、注意して書かないと同じData URI化した画像がいくつもCSSに出てくるなどという無駄につながりかねない。極端な例では3KBくらいのData URI化した同じ画像が8から10以上出てくるCSSファイルとか見たことが何回もある。 単なるアイコンなどは使い回しすることはあまりなく、クラス名に紐付けられるだけなのでこういう問題は起こらないけど、上記のような透過させたグラデーションのような使い回すことを意図したテクスチャを違う背景色と混ぜてアレンジするというような使い方においてData URIを利用すると重複が起こりやすい。そういう時にはOOCSS的なアプローチでData URI化した画像を使うためだけのクラスを作ってセレク

    Data URI化した画像とその再利用性
    gfx
    gfx 2012/07/10
    css-variable っていう仕様があるのね。