小编omi*_*nch的帖子

Kotlin/Native - 非法尝试访问非共享 <object>

在我的应用程序中,我有两个类,一个继承自 kotlin 类的 swift 类:

迅捷类:

public class MySensor: RawSensor

    [...]

    public override func notifyChanged(values: KotlinFloatArray) {
      super.notifyChanged(values: values)
    }
}
Run Code Online (Sandbox Code Playgroud)

科特林类:

package com.mycompany.myapp.mypackage.sensors.rawsensors

import com.mycompany.myapp.mypackage.util.Observable

abstract class RawSensor : Observable() {

  protected abstract val sensorDataType: RawSensorData.SensorDataType

  abstract val currentTime: Long

  protected open fun notifyChanged(values: FloatArray) {
      notifyObservers(RawSensorData(values, sensorDataType, currentTime))
  }

  abstract fun start()

  abstract fun stop()
}
Run Code Online (Sandbox Code Playgroud)

super.notifyChanged(values: values)被调用时,应用程序崩溃,并出现以下错误:

Uncaught Kotlin exception: kotlin.native.IncorrectDereferenceException: illegal attempt to access non-shared <object>@83cb47c8 from other thread
Uncaught Kotlin exception: kotlin.native.IncorrectDereferenceException: illegal …
Run Code Online (Sandbox Code Playgroud)

shared-memory ios kotlin swift kotlin-native

3
推荐指数
1
解决办法
2070
查看次数

标签 统计

ios ×1

kotlin ×1

kotlin-native ×1

shared-memory ×1

swift ×1