中文字幕在线观看,亚洲а∨天堂久久精品9966,亚洲成a人片在线观看你懂的,亚洲av成人片无码网站,亚洲国产精品无码久久久五月天

Kotlin/Native v0.8 發(fā)布,提供更安全的并發(fā)編程支持

2018-07-12    來源:oschina

容器云強勢上線!快速搭建集群,上萬Linux鏡像隨意使用
Kotlin

Kotlin/Native v0.8 已正式發(fā)布,該版本有以下值得關(guān)注的更新:

  • 更安全的并發(fā)編程

  • 擴展 stdlib 功能

  • 更好的 iOS 開發(fā)支持

此外該版本還包含許多錯誤修復(fù)和優(yōu)化。

GitHub 發(fā)布主頁 https://github.com/JetBrains/kotlin-native/releases/tag/v0.8

更好的并發(fā)支持

在 v0.8 之前,Kotlin/Native 應(yīng)用程序?qū)卫龑ο鬆顟B(tài)保持為特定執(zhí)行的線程的本地狀態(tài),因此不同線程上的單例對象的狀態(tài)可能是非同步的。現(xiàn)在,擴展了凍結(jié)單例對象的概念,允許共享的不可變狀態(tài)。

例如,以下代碼

object Config {
    var width: Int = 10
    private set
    init {
        val file = fopen("config.txt", "r")
        if (file != null) {
            try {
                memScoped {
                    val bufferLength = 2 * 1024
                    val buffer = allocArray(bufferLength)
                    while (true) {
                        val nextLine = fgets(buffer, bufferLength, file)?.toKString()
                        if (nextLine == null || nextLine.isEmpty()) break
                        val records = nextLine.split('=')
                        if (records.size != 2) continue
                        val key = records[0].trim()
                        val value = records[1].trim()
                        when (key) {
                            "width" -> width = value.toInt()
                        }
                    }
                }
            } finally {
                fclose(file)
            }
        }
    }
}

將讀取配置文件,并可以提供 Config.width 屬性。 每個進程執(zhí)行時將讀取一次 Config 文件,并且可供任何線程或 worker 使用。 而一旦發(fā)布,該對象就會被凍結(jié),并且不能再被修改(嘗試修改將拋出 InvalidMutabilityException 異常)。

其他有關(guān)庫的改進,以及對 iOS 開發(fā)支持的改進,請查看發(fā)布主頁 https://blog.jetbrains.com/kotlin/2018/07/kotlinnative-v0-8-released/

標簽: O2O 安全 代碼

版權(quán)申明:本站文章部分自網(wǎng)絡(luò),如有侵權(quán),請聯(lián)系:west999com@outlook.com
特別注意:本站所有轉(zhuǎn)載文章言論不代表本站觀點!
本站所提供的圖片等素材,版權(quán)歸原作者所有,如需使用,請與原作者聯(lián)系。

上一篇:http://ruster.xyz 實驗上線,用 Rust 寫的中文 Rust 社區(qū)

下一篇:PHP 7.3 比 PHP 7.0 快 22%,即將進入特性凍結(jié)階段