さくらんぼのlambda日記

lambdaちっくなことからゲーム開発までいろいろ書きます。

Rubyでスレッド。

ソースの色づけのテストもかねてます。

試行錯誤してなんとか動作。



スタイルシートとか定義しないと行けないのに

気がつかなかった。

ともあれ綺麗になって良かった。

取り合えず、RubyでLamportのアルゴリズム

を実装したかったので

alarmで適当に時間を回すかと思ったら

alarmが無い。


ので、スレッドで実装しようかと。

で勉強がてら簡単なのを。

以下のコードは単純に数を増やしているだけ。

これをちょっと弄れば目標のlamportのアルゴリズムの

実装はできるはず。



require 'thread'

lock=Mutex.new
globaltime = 0

Thread.start do

while true
lock.synchronize do
globaltime+=1
puts globaltime
end
sleep(0.1)
end
end

while(true)
lock.synchronize do
globaltime+=100
puts globaltime
end
sleep(10)
end