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

相关推荐
Anokata16 分钟前
MYSQL SQL 执行系列1
android·sql·mysql
REDcker39 分钟前
Android 15 16KB 内存页适配详解
android·开发语言·python
Kapaseker1 小时前
Android 开放这扇门,正在被 Google 从里面反锁
android·kotlin
帅次1 小时前
Android 高级工程师面试:网络与数据层 近1年高频追问 18 题
android·网络·okhttp·面试·retrofit·gilde
三少爷的鞋2 小时前
Android 架构这些年,其实一直在消灭碎片化异步
android
plainGeekDev18 小时前
依赖管理 → Version Catalog
android·java·kotlin
韩曙亮19 小时前
【Flutter】Flutter 进程保活 ③ ( 屏幕常亮设置 | Flutter 禁止息屏、关闭自动锁屏、屏蔽系统屏保 )
android·flutter·ios·屏幕常亮·禁止息屏
爱笑鱼20 小时前
NDK、SDK、APP、Framework、Native 到底怎么区分?
android
私人珍藏库20 小时前
[Android] 发票制作器-内置多行业专业模板
android·人工智能·app·软件·多功能
阿pin20 小时前
Android随笔-PMS
android·pms