• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:pthread_mutex_lock の応答時間)

pthread_mutex_lockの応答時間について

このQ&Aのポイント
  • HP-UX上でCを使ってpthreadプログラムを記述しています。mutexを競合するスレッドが2つあり、A) pthread_mutex_lock(&mutex) B) pthread_mutex_lock(&mutex) A) pthread_mutex_unlock(&mutex) の流れで処理が流れています。
  • A)がlockを解放してからB)がlockを獲得できるまで(=pthread_mutex_lockの応答が返ってくるまで)に多少の時間がかかってしまうことはありうるのでしょうか。(現在発生している事象では、0.002秒程度)
  • マシン性能にも拠ると思いますし、B)スレッドが再開するときのCPU割り当てに時間がかかった等も考えられるのかとは思いますが、スレッドライブラリとしての動きが知りたいです。

質問者が選んだベストアンサー

  • ベストアンサー
  • hidebun
  • ベストアンサー率50% (92/181)
回答No.1

>多少の時間がかかってしまうことはありうるのでしょうか ありうるでしょうね。スレッドがスリープ状態になり、起床のタイミングはOS任せになるでしょう。 それが問題になるケースの為に、スピンロック用のI/Fがあるようですから。 http://codezine.jp/article/detail/1893?p=2

nishimry
質問者

お礼

回答ありがとうございました。 spinlock用の関数もあったんですね。当方の現在のプログラムでspinして待つことは良くないと考えますが、リンクにあるspinとmutexの比較説明でpthreadライブラリについての理解が深まりました。 参考にさせていただきます。

関連するQ&A