public override Object this [object key] { get { lock (host.SyncRoot) { return host.GetImpl (key); } } set { lock (host.SyncRoot) { host.PutImpl (key, value, true); } } }