mutex

    17

    6答えて

    すでにロックされていないミューテックスのロックを解除した場合、その動作は安全でないか、安全か、または未定義ですか? 質問の目的は、あれば、ブロック内、またはかのブロックの外側ミューテックスのロックを解除した方がよいかどうかはわからない、次のコードに関連しています。 // This chunk of code makes dual locking semi-autonomous. int

    31

    6答えて

    私は、状態(単純な列挙型)を持ち、2つのスレッドからアクセスされるクラスを持っています。状態を変更するために、私はmutex(boost :: mutex)を使用します。状態を確認するのは安全ですか(たとえばstate_ == ESTABLISHEDを比較)、この場合もmutexを使用する必要がありますか?言い換えれば、別のスレッドが同時に書き込むことができる変数を読みたいだけの場合は、ミューテッ

    1

    1答えて

    フロリダ州立大学のpthread標準の実装が、おそらく再帰的なmutexを扱うことができるかどうか疑問に思っています。 残念ながら、FSUの実装に関するドキュメントはかなり貧弱であり、ミューテックスを再帰的に宣言する可能性については言及していません。 (同じコードをコンパイルしようとすると test.c:25: error: `pthread_mutex_attr' undeclared (fir

    5

    1答えて

    単一プロデューサスレッドのシングルコンシューマスレッドのロックレスキューがあり、プロデューサがデータを生成することなく長期間使用する可能性があるとします。待ち行列に何もないときにコンシューマースレッドをスリープさせることは有益です(節電と他のプロセス/スレッドのためのCPUの解放)。キューがロックレスでない場合、この問題を解決する簡単な方法は、生成スレッドがミューテックスをロックし、その作業を行い

    23

    4答えて

    関数pthread_mutex_initを使用すると、属性へのポインタを指定できます。しかし、私はpthreadの属性が何であるかについての良い説明をまだ見つけていません。私はいつもNULLを提供してきました。この議論には使用はありますか?それを忘れてあなたの人々のための ドキュメント、: pthread_mutex_initの(3) NAME pthread_mutex_initの 関数マニュア

    1

    1答えて

    私はこのやや珍しいプロセス構造を持っている: Launch4Jは私のJavaアプリケーションを起動します。単一インスタンスの機能を提供するためのミューテックスを作成します。 JavaアプリケーションがVB6アプリケーションを起動します。 Javaアプリケーションが終了すると、VB6アプリケーションはまだ実行されています。 (希望の動作) 問題は次のとおりです。Launch4Jによって作成されたmu

    8

    2答えて

    プログラムは、スタートアップの一部としてミューテックスを作成します。私はこのmutexの形式を知らないので、放棄されていないすべてのmutexのリストを取得し、プログラムを開き、新しいリストを取得し、すべての重複エントリを削除してmutexを見つけることができるかどうかを調べる方法があるのだろうかと思った。 このリストを取得する方法はありますか?

    5

    2答えて

    数ヶ月前に、私は男(orkut)のこの面白いシナリオを尋ねました。しかし、私はこの問題(小さなコードでテストしたことがあります)に「移植性のない」ソリューションを考え出しましたが、依然として皆さんが何を言い、示唆しているかを知りたいと思います。 私はDLLを作成して、C++で書かれたいくつかの機能をエクスポートしました。はシングルスレッドクライアントです。このDLLは大量のグローバル変数を宣言して

    5

    3答えて

    PassengerまたはMongrel経由でRailsを配備する場合、アプリケーションの複数のインスタンスが実行されています。ローカルファイルやリモートファイルへの書き込みなど、共有リソース上にミューテックスを確立するためのベストプラクティスまたはパターンとは何ですか?私は、2つのプロセスが同じリソースに同時に書き込まれないようにしたい。

    13

    2答えて

    私はロック、ミューテックス、その他の同期構造の概念を理解していますが、どのように実装されていますか?これらはOSによって提供されているのですか、またはこれらの構造はCPU MMUの特別なCPU命令に依存していますか?