2016-06-16 8 views
7

ich so etwas wie dies versucht:Wie volatil auf Kotlin verwenden

private volatile var instanceState: InstanceState = InstanceState.starts 

Error: 'Expected member declaration' 

und wie folgt aus:

private volatile var instanceState: InstanceState = InstanceState.starts 

Error: 'Property getter or setter expected' 

Flüchtige nicht auf Kotlin unterstützt?

Antwort

12

Sie eine Eigenschaft als volatile mit @Volatile Anmerkung markieren:

@Volatile var name:String = "stack" 

Die resultierende Felddeklaration ist auf Java-Äquivalent:

Gemäß der @Volatile docs:

Markiert die JVM Trägerfeld der kommentierten Eigenschaft als flüchtige, Bedeutung, die dieses Feld schreibt, werden sofort sichtbar andere Themen erstellt.

+0

die Annotation sollte in der gleichen Zeile sein, denke ich – voddan

+0

@voddan ist, dass einige empfohlene Kotlin Style Guide? – miensol

+0

ist es. Siehe https://github.com/yole/kotlin-style-guide/issues/4 – voddan