kotlin 嵌套线程 - “此范围内有多个具有此类名称的标签”

2024-01-22

我有一些与此类似的 kotlin 代码:

Thread {
    ...
    Thread {
        ...
        return@Thread
        ...
    }.start()
    ...
}.start()

现在我收到以下警告:

我知道 kotlin 对于此时要返回哪个线程感到困惑,无论是外线程还是内线程。但我不知道如何告诉它,Android Studio 也没有多大帮助,因为它只建议编辑此警告的选项:

我尝试为线程命名,并认为 kotlin 可能足够聪明来检查这一点,但我想这可能是不可能的,因为返回标签可能不会在运行时解释。

我意识到我可以将内部线程导出到函数中,从而使线程不会相互干扰,如下所示:

Thread {
    ...
    startInnerThread()
    ...
}.start()

fun startInnerThread() {
    Thread {
        ...
        return@Thread
        ...
    }.start()
}

但我想知道是否可以更改标签@Thread代替其中之一。


是的,您可以通过标记要返回的函数来做到这一点,如下所示:

Thread {

    Thread Foo@ {

        return@Foo

    }.start()

}.start()
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

kotlin 嵌套线程 - “此范围内有多个具有此类名称的标签” 的相关文章

随机推荐

  • 一起使用 makeLenses、类约束和类型同义词

    我对 Haskell 很陌生并且想使用makeLenses from Control Lens类约束与类型同义词一起使我的函数类型更加紧凑 可读 我试图提出一个最小的虚拟示例来演示我想要实现的目标 并且该示例除此之外没有其他目的 如果您对上
  • Google 日历 (API) 问题

    我想用谷歌日历 http en wikipedia org wiki Google Calendar为了添加派对活动 所以我添加了一个新的日历 活动 有没有删除该日历中所有事件的功能 或者只能通过删除整个日历并重新创建它来实现 我有每天更新
  • 如何使用Weka预测结果

    我是 Weka 新手 对该工具感到困惑 我有一个关于水果价格和相关属性的数据集 我正在尝试使用数据集预测具体的水果价格 由于我是 Weka 新手 我不知道如何完成这项任务 请帮助我或指导我了解有关如何进行预测以及此任务的最佳方法或算法是什么
  • rCharts-如何向 NVD3 图表添加轴标签和标题

    我正在探索 reCharts 我在向 Y 轴和标题添加标签时陷入困境 我是 rCharts 新手 这是我的示例代码 require rCharts n2 lt nPlot Hours Month group Task data cars t
  • jquery 的 $.ajax 中从 url 参数中删除附加 url 的方法

    我正在使用 cakephp 并想使用jQuery ajax发布到我的服务器 问题是 jQuery 的 ajax附加协议和主机名 但还包括当前控制器 因此我无法更改我粘贴的控制器 有没有办法改变 url 参数 ajax 这是我的示例邮政编码
  • 这个程序如何运作?

    include
  • Silverlight 3 和 Silverlight 4 条件 xaml

    我现在正在开发一个必须分离项目文件的项目 一个符合 Silverlight 3 另一个符合 Silverlight 4 该项目创建了一个在其他几个项目中使用的用户控件 不幸的是 其中一个处于 SL3 状态 现在无法升级 这就是为什么需要 S
  • 将目录迁移到不同的 svn 存储库

    我在 svn 存储库中有代码 将其称为存储库 A 现在假设我需要将内容移动到存储库 B 但存储库 B 已经对其他项目处于活动状态一段时间了 是否可以将特定目录从存储库 A 移动到存储库 B 同时保留文件历史记录 通常 要将整个存储库迁移到新
  • MapView 显示在灰色瓷砖地图中未显示在 android google api 2.3.3 中

    您好 我正在开发一个地图视图 我尝试遵循以下方式 我通过单击按钮创建了一个 意图 添加权限和库 我创建了一个覆盖项目 我的模拟器的目标是GoogleApi 2 3 3 我的MapView密钥已获取并分配到mapview xml中 我看到底部
  • Eclipse:快速搜索文件名

    在 Eclipse 中工作时 我经常意识到我记得类名 但忘记了该类在哪个包中 使用搜索不是很方便 点击和按键次数过多 我想知道 有没有一个插件可以简化这个过程 例如 如果包资源管理器顶部有一个文本编辑框 可以根据输入的文本过滤显示包和 ja
  • 确定 1 到 0 转换之间的时间

    我的表格显示泵的开 关状态如下 Value timestamp 1 2013 09 01 00 05 41 987 0 2013 09 01 00 05 48 987 1 2013 09 01 00 05 59 987 0 2013 09
  • 使用reduce进行分组和求和

    我想返回一个按团队分组的数组 其中包含 gp 胜利 失败的总和 我试图通过减少来实现这一点 但是总数并没有相加 这是我的代码 const myArr team Red gp 3 win 2 loss 1 team Black gp 3 wi
  • Cordova/Phonegap 社交共享

    我正在寻找一种简单的解决方案 用于在 cordova phonegap 应用程序内部共享 我希望添加 Facebook Twitter 和电子邮件共享 就像这个应用程序一样 http itunes apple com us app mars
  • 在 Yii 中设置默认时区

    我正在使用以下时区配置配置文件 timeZone gt UTC 它工作正常 所有日期都根据以下内容存储在数据库中UTC 现在每个用户在他 她的个人资料中都有自己的时区 例如UTC 5 UTC 5 UTC 0 etc 现在我如何根据用户时区在
  • 我如何知道使用 Azure 存储的代码是否会受到 2015 年 12 月即将删除的 API 版本的影响? [复制]

    这个问题在这里已经有答案了 我有一个来自微软的电子邮件 http aka ms Qga48e据说较低版本的存储服务将于 2015 年 12 月被删除 我们的应用程序使用 Azure SDK 1 8 和 2 0 我们如何确定我们是否受到此更改
  • 如何创建一个android自动启动应用程序?

    如何创建一个安卓自动启动应用程序 我的应用程序显示特殊日期通知 并且它必须自动启动 tnx 您可以使用报警管理器 http developer android com reference android app AlarmManager h
  • 如何使屏幕上的按钮水平和垂直居中且等距?

    我已经绞尽脑汁 这里是android新手 所以不难做到 有一段时间试图找出如何实现这一点 使用RelativeLayout或AbsoluteLayout以外的东西来创建它 我有 Windows 编程背景 其中设备会为您调整 绝对 定位 并且
  • 哈希集与树集

    我一直很喜欢树 真好O n log n 以及它们的整洁 然而 我认识的每一位软件工程师都尖锐地问我为什么要使用TreeSet 从 CS 背景来看 我认为你使用什么并不重要 而且我不喜欢乱搞哈希函数和存储桶 在这种情况下 Java 在什么情况
  • REDCap 自动填充早期记录中的字段

    我想用早期记录中该字段中插入的内容填充下拉菜单 不带管道的形式 具体来说 我有一个名为 杂志 如果之前有人记录过日记 代谢组学 我希望它出现在下拉菜单 或类似的菜单 中 如果日记是新的 我会添加一个文本字段 可以在其中添加新日记 感谢您的帮
  • kotlin 嵌套线程 - “此范围内有多个具有此类名称的标签”

    我有一些与此类似的 kotlin 代码 Thread Thread return Thread start start 现在我收到以下警告 我知道 kotlin 对于此时要返回哪个线程感到困惑 无论是外线程还是内线程 但我不知道如何告诉它