August 2011
1 post
Scala STM コードリーディングメモ
Ref を作る
object Ref の factory は、impl.STMImpl.instance
impl.STMImpl.instance は、scala.concurrent.stm.ccstm.CCSTM を impl.STMImpl にキャストしたもの
Ref.apply で 1:Int とか渡すと newPrimitiveRef > factory.newRef が呼ばれる
factory は、impl.RefFactory だけど CCSTMRefs.Factory が実体。CCSTM が CCSTMRefs.Factory を extends している
最終的に new IntRef(1) の結果が返る
atomic の呼び出し
atomic > scala.concurrent.stm.TxnExecutor.defaultAtomic...