前田です。

At Mon, 7 Jun 1999 20:54:07 +0900,
Shin-ichiro Hara <sinara / blade.nagaokaut.ac.jp> wrote:
> |件のコードに関してはThread::exclusiveよりも速くなったと思います:-)
> 
> では Thread::exclusive を C で書いたらどうなるんでしょう?

たぶん、メソッド検索のコストの方が高いような気がするので、それほ
どMutexの性能が劣るということはないんじゃないかと思います。

あと、Thread::exclusiveには再帰的に呼べないという問題と、中で
sleepやThread.stopが呼ばれるとそれ以降のコードが保護されなくなっ
てしまうという問題があるので、やはりユーザレベルのプログラミング
では使うべきではないと思います。

> |うーん、Rubyのスレッドは時分割方式なので、IOがブロックしたりする
> |わけではない単純計算のプログラムでは、並列度(じゃなくて平行度か)
> |は低い方が速くなるんじゃないでしょうか。
> 
> それはそうですよね。占有するから速い。そこで速いのがいいなら
> シングルスレッドで書けばいいじゃないかと思われそうです。しか
> しスピードも速いし距離も短いならとにかく走ってもらいたいと思
> いません?思わないのかあ。(^^;

私はRubyで書く時はあまりスピードは気にしないで書いてます(^_^;
Cで書く時には効率が気になったりするんですが。

-- 
前田 修吾