タグ

関連タグで絞り込む (1)

タグの絞り込みを解除

C++とThreadに関するnsyeeのブックマーク (3)

  • スレッドセーフという幻想と現実 - yohhoyの日記(別館)

    この記事はC++ Advent Calendar 2013の15日目にエントリしています。 内容はC++標準ライブラリとスレッドセーフに関する解説になります。 flickr / rennasverden もくじ What's スレッドセーフ? スレッドセーフという幻想 基型とデータ競合 C++標準ライブラリとデータ競合 C++標準ライブラリ:シーケンスコンテナ編 C++標準ライブラリ:連想コンテナ編 スレッドセーフ RELOADED 基的なスレッドセーフ保証 std::shared_ptr<T> std::rand() std::cout (文のみ約9000字) はじめに マルチスレッド対応の点では他言語に遅れを取っていたプログラミング言語C++ですが、C++11ではようやく標準ライブラリにスレッドサポートが追加されました。C++11スレッドサポートではスレッドクラスstd::thr

    スレッドセーフという幻想と現実 - yohhoyの日記(別館)
  • GCJテンプレート - 純粋関数型雑記帳

    前回日記を書いたときから一回も練習をしていないことに気づいた。 もうすぐそこに迫ってきているというのに。 テキサスに行ったときは メダルを持ち帰ってきます、などと臆面もなく言っていたが、 今回はとてもじゃないが何も期待できない。 こんなに何もせずに勝てるわけないじゃない。 それはそれとして。 Round2のときにデュアルコアが使えてれば後一問通ったのに、と思って Round3のときに準備したテンプレートでも公開してみることにする。 Round3が終わったときには、やっぱりプログラムはオーダーだ、 とか思って東京Local大会には持っていかなかったのだが、 計算機の気まぐれで通るという綱渡りになってしまったので、 Finalにはやっぱり持っていこうと思う。 あまり大きなテンプレートはバグが入っていたら怖いから、 できれば避けたかった所なのだが致し方あるまい。 #include <iostre

    GCJテンプレート - 純粋関数型雑記帳
  • Kazuho@Cybozu Labs: スレッド間で共有する変数のアクセス権制御を C++ コンパイラで強制する方法

    マルチスレッドなプログラムを書いていると、スレッド間で共有する変数へのアクセスを正しく直列化できているか、という点が常に問題になります。どうせなら、正しく書けているかコンパイル時に確認したいよね、ということで、以下のような C++ テンプレートを書いてみました。 template <typename T> class cac_mutex_t { public: class lockref { protected: cac_mutex_t<T>* m_; public: lockref(cac_mutex_t<T>& m) : m_(&m) { pthread_mutex_lock(&m_->mutex_); } ~lockref() { pthread_mutex_unlock(&m_->mutex_); } T& operator*() { return m_->t_; } T* ope

  • 1