2011-01-01から1ヶ月間の記事一覧
刺身☆ブーメランのはてなダイアリー 2011/01/12(Wed) への返信です。 元コードの wait_server:client/3 は、receive で From を束縛しているので、この状態だとメッセージの選択受信になりません。From を Server_Pid に変更すると、ただしく動作すると思い…
その1、その2、その3 に引き続き、今回は reply が不要なパターン*1で試してみました。 import scala.concurrent.stm._ import scala.actors.{Actor, Exit} import scala.actors.Actor.actor import scala.actors.Actor.State.{New, Terminated} import Syst…
勉強会第20回 - Scala勉強会 in 渋谷で久しぶりに発表するので下準備など。 ちょっとイロイロと手抜きコードですが… runTest メソッドだけ注目して下さい。switch メソッドを評価する度に Actor が切り替わります。 object Trampoline { import scala.actors…
下記は、あまり嬉しくない。Remote Actor 間でトランポリンする方法を考え中。うーん、reset と shift 以外の制御構造が欲しいと思うのは私だけ? object RemoteTest { import scala.actors.{Actor, AbstractActor} import scala.actors.Actor.actor import …
突っ込み大歓迎です。というか助けてください。環境は、Mac OS 10.6.5, Scala 2.8.1.final, Java 1.6.0_22 となります。 検証用のコードは、Scala STM を試してみる その3 で使ったコードの修正版のこちらとなります。STM と対比するために Actor のみを用い…
前々回、前回に引き続き ScalaSTM を試してみました。 結論から言うと、私の環境では Worker の数が 300 を超えた辺りから、カウンタ用の Actor への問い合わせがタイムアウトしまくるので、Actor + STM の方が良好な結果が得られました。 今回テストに使用…
前回に引き続き ScalaSTM を試してみました。 object SampleForSTM2 { import scala.concurrent.stm._ import scala.util.control.Exception.allCatch def main (args: Array[String]) { doTest( "case5" -> case5, "case6" -> case6 ) } def doTest(testCas…