Kotlin 使用线程与内部类

2019-02-14  本文已影响0人  炫子_260f

使用线程

实现Runnable

   inner class WorkTask: Runnable{
        var _canQuit  = false

        override fun run() {
            while (!_canQuit){
                val id = 0 
                if (id == 0) {
                    this@ActivityKt.sendMessage("id==0")
                    Thread.sleep(1000)
                    continue
                }
            }
        }

        fun setQuit(){
            _canQuit = true
        }
    }

线程调用

    var worker : WorkTask = WorkTask()
    val workThread = Thread(worker)
    workThread.start()

和java差不多

内部类说明

class 前面的inner是为了表示这是内部类,如果不是为了使用外部类的方法或属性,可以去掉。
使用外部类的方法或属性要使用这样的方式this@ActivityKt.sendMessage("id==0"),就能调用到外部类的sendMessage方法了;调用外部类属性同理。
去掉inner就没法直接调用了。

上一篇下一篇

猜你喜欢

热点阅读