Correct docs of ThreadLocal and SharedImmutable annotations

- clarify that they have effect only in K/N
- correct possible application targets of SharedImmutable

KT-36245
This commit is contained in:
Ilya Gorbunov
2020-05-22 20:05:38 +03:00
committed by ilya-g
parent bdac685954
commit 6c7fac2eaf
@@ -6,11 +6,13 @@
package kotlin.native.concurrent
/**
* Marks a top level variable with a backing field or an object as thread local.
* Marks a top level property with a backing field or an object as thread local.
* The object remains mutable and it is possible to change its state,
* but every thread will have a distinct copy of this object,
* so changes in one thread are not reflected in another.
*
* The annotation has effect only in Kotlin/Native platform.
*
* PLEASE NOTE THAT THIS ANNOTATION MAY GO AWAY IN UPCOMING RELEASES.
*/
@Target(AnnotationTarget.PROPERTY, AnnotationTarget.CLASS)
@@ -18,10 +20,12 @@ package kotlin.native.concurrent
public actual annotation class ThreadLocal
/**
* Marks a top level variable with a backing field or an object as immutable.
* It is possible to share such object between multiple threads, but it becomes deeply frozen,
* Marks a top level property with a backing field as immutable.
* It is possible to share the value of such property between multiple threads, but it becomes deeply frozen,
* so no changes can be made to its state or the state of objects it refers to.
*
* The annotation has effect only in Kotlin/Native platform.
*
* PLEASE NOTE THAT THIS ANNOTATION MAY GO AWAY IN UPCOMING RELEASES.
*/
@Target(AnnotationTarget.PROPERTY)