semaphore

    5

    1答えて

    OpenCV画像処理の2つのスレッドを同期させるためにセマフォーを使用しようとしています。 1つのスレッドは、Webカメラからフレームをキャプチャし、循環バッファにプッシュし、もう1つのストリームはバッファからイメージをプルして処理します。私はそれらを処理した後に使用するフレームを削除しています。 バッファを実装するためにブースト循環バッファライブラリを使用しています。 下記のコードをご覧ください

    1

    1答えて

    私は、いくつかの変数が非常に高い頻度で書き込まれ、読み込まれる部分を持つアプリケーションを持っています。それはの些細な部分であるとして セマフォやロックの必要性(データの一貫性は、この場合に懸念がされていない)、スレッド、セマフォやものに取得したくないアプリケーションの終了やcrashing.Iのいずれかの可能性があり.Isです応用。

    11

    2答えて

    「tick tock」パターンで進行するには2つのスレッドが必要です。セマフォとimplmented場合、これは正常に見える: Semaphore tick_sem(1); Semaphore tock_sem(0); void ticker(void) { while(true) { P(tick_sem); do_tick();

    1

    1答えて

    UNIX OSでSysVセマフォを使用すると、セマフォの値が0になるまでプロセスが待機するアルゴリズムを実装できます(詳細はman semopを参照)。さて、誰もが他の同期APIを使用するほうがいいと言われるので、私の質問は、pthreads、POSIXセマフォー、または他の同様のAPIを使って同じ動作をどうやって得ることができるのでしょうか?可能でない場合は、SysVセマフォの使用について心配す

    3

    2答えて

    私の理解によれば、セマフォは、関連するプロセス間で共有メモリに置かれていなくても使用可能でなければなりません。もしそうなら、なぜ次のコードはデッドロックですか? #include <iostream> #include <semaphore.h> #include <sys/wait.h> using namespace std; static int MAX = 100; int

    20

    2答えて

    私はshell scriptのmutex/semaphore/concurrencyのメカニズムを探しています。 以下の状況を考慮してください: "a"ユーザが共有ファイルを閉じない限り、 "b"ユーザはそれを開く/更新できません。 私はシェルスクリプトでmutex、semaphore、critical sectionsのメカニズムを実装する方法を知りたいだけです。 もう1つ質問: shell s

    -1

    1答えて

    コードをチェックして、正しいトラックにいるかどうかを教えてもらえますか?私は少し失われているようです。エラーが表示されたら、私にそれらを教えてください。 私がやろうとしているのは、自分自身のセマフォとGCDを使って境界バッファを解決することです。事前に おかげ.. sema.c void procure(Semaphore *semaphore) { pthread_mutex_lo

    6

    3答えて

    セマフォを使用して単純なルーチンを実装しようとしていますが、アプリケーションのインスタンスを3つしか実行できません。私は3つのミューテックスを使うことができましたが、これは今までこれを試した良いアプローチではありません。 var hSem:THandle; begin hSem := CreateSemaphore(nil,3,3,'MySemp3'); if hS

    1

    3答えて

    セマフォを使用した後に何度でもセマフォを何度でも初期化して再利用できるようにしても問題ありません。 おかげ

    2

    2答えて

    Silverlight 4で開発中です。 スレッドがあります。 WaitHandles(AutoResetEvent、ManualResetEvent)もそこにあります。しかし、セマフォーはありませんか?何か不足していますか?