synchronized

fun <T> synchronized(value: T, didSet: (T) -> Unit? = null): CSSynchronizedProperty<T>