タグ

threadに関するhirose31のブックマーク (14)

  • tokuhirom blog

    Blog Search when-present<#else>when-missing. (These only cover the last step of the expression; to cover the whole expression, use parenthesis: (myOptionalVar.foo)!myDefault, (myOptionalVar.foo)?? ---- ---- FTL stack trace ("~" means nesting-related): - Failed at: ${entry.path} [in template "__entry.ftlh" at line 3, column 25] - Reached through: #include "__entry.ftlh" [in template "entry.ftlh" at

  • wakaponさんの超☆痛々しいPerl備忘帳: threads.xsめもめも

    threads.xsで使われているインタプリタスレッドの構造についてまとめたものをめもめ.最初にPerlithreadsの概要について説明してから,管理構造,提供されるメソッド,マジックについて説明していく. 1. Perlのスレッドの概要 Perlのスレッドはインタプリタスレッド(ithreads)と呼ばれる.スレッドのモデルはネイティブスレッドモデルである.1つのインタプリタスレッドは,1つのネイティブスレッド上で実行される.1インタプリタスレッドの親スレッドから指定されたサブルーチンは,インタプリタスレッド上に用意されたインタプリタインスタンスで実行される. スレッド間でのデータ共有は明示的に行う.1つのインタプリタスレッドから新たなスレッドを生成した場合,親スレッドのインタプリタインスタンスの内容がすべて子スレッド中のインタプリタインスタンス内にコピーされる.そのため,明示的に共

  • MySQLに対するDrizzleの答え #1 スレッド管理編 - mixi engineer blog

    先日、Drizzleのスレッド管理を担うコアの一部分がモジュール化され、勉強がてらMySQLのスレッド管理の設計を調べてみました。その時のメモ(だから文が少し固いかも)と、Drizzleでの戦略を今回のエントリーで公開します。 最後のDrizzleでは?セクションまではプログラミングの教科書に載っている様な典型的なセオリを述べているだけなので、MySQLのインターナルに詳しい方は最後まで飛ばした方が良いかもしれません。 ちなみにソースはMySQL 5.1とMySQL 6.0のドキュメントです http://dev.mysql.com/doc/refman/6.0/en/connection-threads.html http://dev.mysql.com/doc/refman/5.1/en/connection-threads.html 現在の仕組みと制限 現在のMySQLでは新たなクラ

    MySQLに対するDrizzleの答え #1 スレッド管理編 - mixi engineer blog
    hirose31
    hirose31 2009/02/10
    thread cache, thread pool
  • mmap+POSIXセマフォによる高速なプロセス間通信 - mp::ipc_vector - Blog by Sadayuki Furuhashi

    同じホストの異なるプロセスの間で、高速な通信を行いたいときがあります: fork() したプロセスと通信したい場合や、「アプリケーションたくさん → localhostのクライアントデーモン1つ → サーバー」という形で接続したい*1 *2 場合などなど。 あるいは共有リソースを管理するプロセスが必要なとき、具体的には memcached が localhost で動いるイメージ。 こんなときに高速なプロセス間通信がしたい。スレッドなみに高速だと嬉しい。 そこで、POSIXセマフォを使って排他制御をしつつ、mmap(2) を使って共有したメモリの上でデータをやりとりすることで、高速にプロセス間で通信を行えるようにするライブラリを作ってみました。 さっそくベンチマーク: 時間 スループット換算 UNIXドメインソケット 4.44 sec 25 MB/s ipc_vector(sleepなし)

    mmap+POSIXセマフォによる高速なプロセス間通信 - mp::ipc_vector - Blog by Sadayuki Furuhashi
  • Manpage of PTHREADS

    Section: Linux Programmer's Manual (7) Updated: 2008-08-24 Index JM Home Page roff page 名前 pthreads - POSIX スレッド 説明 POSIX.1 は、一般に POSIX スレッドや Pthreads として知られる スレッド・プログラミングのインタフェース群 (関数、ヘッダファイル) を規定している。一つのプロセスは複数のスレッドを持つことができ、 全てのスレッドは同じプログラムを実行する。 これらのスレッドは同じ大域メモリ (データとヒープ領域) を共有するが、 各スレッドは自分専用のスタック (自動変数) を持つ。 POSIX.1 はスレッド間でどのような属性を共有するかについても定めている (つまり、これらの属性はスレッド単位ではなくプロセス全体で共通である): - プロセス ID

  • 再入不可能な関数を C で実装する - いやなブログ

    再入不可能な関数を C で実装する 一度実行したら二度と中身を実行できなくなる再入不可能な関数を C で実装してみます。通常、このような関数はシングルトンなどの静的なデータの初期化に使いますが、ここではデータについては考えないことにします。 static 変数をフラグに使う まずは最も単純な方法から見ていきます。次の関数は static 変数をフラグに使って再入を防いでいます。厳密に言えば関数そのものには入ってしまっていますが、ここで気にしないことにします。 void once(void) { static int entered; // 最初は 0 if (entered == 1) { // すでに入ったことがある場合は return; // すぐ出る } entered = 1; // 初回の場合のみ、何かを実行する } この方法はシングルスレッドのプログラムではうまく動きますが、マ

    hirose31
    hirose31 2008/07/23
    atomic アトミック cmpxchg
  • はてなブログ | 無料ブログを作成しよう

    晴天の価値 2月中旬に出張で千葉へ行った。5日間の滞在中はずっと快晴で、気温は20℃に迫る春のような暖かさだった。仕事は朝から晩まで現場を走り回る過酷なもので、身体的にも精神的にも追い込まれた。毎朝、京葉線から見える美しい景色を眺めて正気を保っていた。太平洋へ燦々と…

    はてなブログ | 無料ブログを作成しよう
    hirose31
    hirose31 2008/05/22
    setcontext/getcontext
  • Simple, Fast, and Practical Non-Blocking and Blocking Concurrent Queue Algorithms

    Simple, Fast, and Practical Non-Blocking and Blocking Concurrent Queue Algorithms Simple, Fast, and Practical Non-Blocking and Blocking Concurrent Queue Algorithms by Maged M. Michael and Michael L. Scott This paper appeared in the proceedings of PODC '96. PDF file (180KB). Pseudocode. Abstract Drawing ideas from previous authors, we present a new non-blocking concurrent queue algorithm and a new

  • http://nyaxtstep.com/trac/libfecti/browser/trunk/fecti/Utility/FMTQueue

    hirose31
    hirose31 2008/02/25
    lock free queue
  • 感想: イベントVs.スレッドをhigh-conccurencyサーバを対象に して真面目に考え直してみた論文。

    Rob von Behren, Jeremy Condit and Eric Brewer (UCB) Why Events Are A Bad Idea (for high-concurrency servers) Proceedings of HotOS 03, May 2003. 感想: イベントVs.スレッドをhigh-conccurencyサーバを対象に して真面目に考え直してみた論文。 Abstract イベントモデルは high-concurrency システムでは良いとされて きたが、それは間違いだ! (筆者らの信じるところによれば) イベントの良い点(高い並列性、低いオーバヘッド、シンプルな 並列モデル)などはスレッドでも達成できる。さらに、スレッドの 方がよりシンプルで自然なモデルでプログラムを書ける。 スレッドの弱さは質的なものではなくスレッドパッケージの実装

  • Ringo's Weblog: 知識の量が質に変化する瞬間

    プライバシーポリシー | サイトポリシー | 商標 | フィード | サイトマップ Copyright© 2000-2007 Community Engine Inc. All rights reserved.

    hirose31
    hirose31 2007/09/08
    Event vs Threadの議論
  • スタックオーバーフローのハンドリング (Stack Overflow Handling)

    作成日:2004.04.12 更新日:2006.02.19 更新記録 (2004.04.12) 3/6、 3/11、 3/13 の日記をまとめて作成。 (2004.05.07) 文章を修正。サンプルコードを追加。 (2005.01.20) alternative → alterante に修正。 (2005.02.13) 追記を記述。 (2006.02.17) linux_stack_info.cpp の実装に誤りがあったので修正。 (2006.02.19) BSD 系OS でのスタック領域情報の取得の仕方を追加 初めに C/C++ でプログラムをしているとつい忘れてしまうのがスレッドのスタックオーバーフローの問題。 最近の OS はスレッド当たり 2〜8MB のスタック領域を持っているため、よほどのことがない限りスタックが溢れてしまうことはない。 だが、再帰や alloca を積極的に使

  • System Interfaces Chapter 2

    An implementation shall not introduce cancellation points into any other functions specified in this volume of IEEE Std 1003.1-2001. The side effects of acting upon a cancellation request while suspended during a call of a function are the same as the side effects that may be seen in a single-threaded program when a call to a function is interrupted by a signal and the given function returns [EINT

    hirose31
    hirose31 2006/12/05
    スレッドセーフじゃない関数たち
  • Perlのithreads(iスレッド)に関するメモ

    Perlithreadsについて ithreadsに関する日語のサイトがあまりないので、何か適当にメモっておきます。 基 サンプル 留意点(重要な基事項) できるだけ最新のPerlで使おう スレッドのコンテキスト スレッドと値 オブジェクトの共有 オブジェクトは二度(以上)死ぬ Windows上でのdetach 特別なサブルーチンCLONEについて マルチスレッドにおけるrand()の使用 スレッドにおけるシグナル処理 関連情報 モジュール その他 forkによるthreadsのエミュレート cond_timedwait なぜかスレッドの生成に時間がかかる時があるのですが… Thread::Queueについて CLONEサブルーチン マルチスレッドにおける再現性のある乱数列 Thread::TieをWIN32 with activeperlで使う スレッドが生きているかどうかのチェ

  • 1