/// <summary> /// Construct a ref with given initial value and metadata. /// </summary> /// <param name="initVal">The initial value.</param> /// <param name="meta">The metadat to attach.</param> public Ref(object initval, IPersistentMap meta) : base(meta) { _id = _ids.getAndIncrement(); _faults = new AtomicInteger(); _lock = new ReaderWriterLockSlim(LockRecursionPolicy.SupportsRecursion); _tvals = new TVal(initval, 0); }
/// <summary> /// Construct a ref with given initial value and metadata. /// </summary> /// <param name="initVal">The initial value.</param> /// <param name="meta">The metadat to attach.</param> public Ref(object initval, IPersistentMap meta) : base(meta) { _id = _ids.getAndIncrement(); _faults = new AtomicInteger(); _lock = new ReaderWriterLockSlim(LockRecursionPolicy.NoRecursion); _tvals = new TVal(initval, 0, System.Environment.TickCount); }