android 关于使用协程的一些问题

问题1:能不能在GlobalScope.launch(Dispatchers.Main){} 做耗时事情

问题2: delay() 算不算耗时的

案例1:

复制代码
        findViewById<View>(R.id.btn1).setOnClickListener {
            GlobalScope.launch(Dispatchers.Main){
                 Thread.sleep(21000)
                 Toast.makeText(this@MainActivity,"sdfs",Toast.LENGTH_SHORT).show()
            }
        }

效果:直接ANR了

案例2:

复制代码
      findViewById<View>(R.id.btn1).setOnClickListener { 

            GlobalScope.launch(Dispatchers.Main){
                 delay(20000)
                Toast.makeText(this@MainActivity,"sdfs",Toast.LENGTH_SHORT).show()
            }
        }

效果:20秒以后显示了 Toast

相关推荐
Sirens.1 小时前
MySQL表设计进阶-约束范式连接索引与事务
android·数据库·mysql
zh_xuan4 小时前
安卓上 mmap读取并修改文件内容
android·mmap
二流小码农4 小时前
鸿蒙开发:实现文本渐变效果
android·ios·harmonyos
光头闪亮亮5 小时前
Fyne ( go跨平台GUI )项目实战-项目开发必备基础知识(中)
android·c++·go
光头闪亮亮6 小时前
Fyne ( go跨平台GUI )项目实战-项目开发必备基础知识(上)
android·sqlite·go
光头闪亮亮6 小时前
Fyne ( go跨平台GUI )项目实战-项目开发必备基础知识(下)
android·c++·go
Ch_champion6 小时前
2018年之前的Android 项目上使用的技术点(及第三方库)
android
龚礼鹏6 小时前
RK Android16 wifi 投屏失败问题排查
android
晓梦林8 小时前
[ACTF2020 新生赛]BackupFile学习笔记
android·笔记·学习
ITmaster07319 小时前
告别 IDE?Android CLI 来了,开发进入 AI Agent 时代
android·ide·人工智能