タグ

マルチスレッドに関するni66lingのブックマーク (3)

  • MSDN Magazine: スレッド プール - スレッド プールによるスケーラブルなマルチスレッド プログラミング

    このブラウザーはサポートされなくなりました。 Microsoft Edge にアップグレードすると、最新の機能、セキュリティ更新プログラム、およびテクニカル サポートを利用できます。 スレッド プールによるスケーラブルなマルチスレッド プログラミング Ron Fosner プログラミングは日ごとに難しさを増していますが、スループットができる限り高くなるようにアプリケーションをチューニングするよう求められる場合は、特に難しくなります。その要因の 1 つが、コンピューターの進化過程におけるここ数年の変化です。コンピューターの処理能力を高めるため、これまではシングル プロセッサの速度を究極まで引き上げようとしていましたが、ここ数年は処理能力が複数のコアに分散されるようになっています。これは良い傾向です。比較的コストをかけずに潜在能力を大きく引き上げることができ、多くの場合、電力消費量も、冷却ニー

    MSDN Magazine: スレッド プール - スレッド プールによるスケーラブルなマルチスレッド プログラミング
  • マルチスレッド (C# によるプログラミング入門) - ++C++; // 未確認飛行 C++

    概要 .NET Framework では、マルチスレッドプログラムを作成するためのクラスライブラリを提供しています。 C# でマルチスレッドプログラムを作成する場合、これらライブラリ中のクラスを用いて行うことになります。 また、C# ではスレッド間の同期を取るために lock 文という構文を用意しています。 ポイント C# なら、Thread クラスとデリゲートで並行処理・並列処理もお手軽。 実際には、スレッドを直接作らず、スレッド プールというものを介して使う。 .NET Framework 4 以降なら、Task クラスを利用。 排他処理は lock 文で。 マルチスレッドとは まず、スレッドに関して簡単に説明しておきます。 簡単に言うと、スレッド(thread: 糸、筋道)とは一連の処理の流れのことを言います。 図1 に示すように、 処理の流れが一道な物をシングルスレッド、 複数の

    マルチスレッド (C# によるプログラミング入門) - ++C++; // 未確認飛行 C++
  • InfoQ: JavaScriptへのマルチスレッド・プログラミングの導入

    function backgroundLoad ( ids ) { for ( var i=0; i < ids.length; i++ ) { var a = getArticleWithCache(ids[i]); backgroundLoad(a.children); } } このbackgroundLoadはIDの配列を引数に取り、その各IDに対して上で定義したgetArticleWithCacheを呼び出します。これでIDに対応する記事のデータがキャッシュされます。そして読み込んだ記事の子記事のIDに対してbackgroundLoadを再帰的に呼び出すことで、ツリー全体をキャッシュすることができます。 ここまですべてうまくいっているように見えます。しかし、一度でもAjax開発を経験したことのある方ならば、これではうまくいかないということはすでにおわかりだと思います。これまでの例で

    InfoQ: JavaScriptへのマルチスレッド・プログラミングの導入
  • 1