问题标签 [runnable]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
6 回答
916 浏览

java - 为什么Java中的java.lang.Thread类没有被设计者标记为final?

当我们可以通过实现 Runnable 并将其传递给 Thread 构造函数来实现相同的功能时,允许用户通过扩展 Thread 类来创建线程的本质是什么。

0 投票
1 回答
12739 浏览

android - Activity 类型中的方法 runOnUiThread(Runnable) 不适用于参数(void)

我正在尝试在 onUtteranceCompleted() 中从非 UI 线程创建一个对话框:

Prompt() 是MyDialog 类的一个简单静态方法:

问题是我正在尝试做的事情有两个错误:

  1. Activity 类型中的方法 runOnUiThread(Runnable) 不适用于参数(void)
  2. MyDialog 类型中的方法 Prompt(Activity) 不适用于参数 (new Runnable(){})

我想要的只是通过将对话框创建推迟到 UI 线程来“做对”,但似乎我缺少一些基本的东西。

我错过了什么,我该如何完成我想要完成的看似简单的任务?

0 投票
2 回答
316 浏览

groovy - Groovy 脚本运行器架构

初始信息:我有一个 groovy 应用程序(我们称之为Runner),它能够运行任何实现特定接口的东西(我们称之为Runnable)。而且我有一个Runnables池(groovy 脚本),在初始化阶段应该对这个应用程序可见,以及哪个应用程序将调用(通过接口并将对象作为参数传递)。

任务:我需要的是一种从Runner加载和调用所有Runnables的方法。

要求:这很棘手,因为脚本可能不遵循某些包结构,并且可以与Runner放在同一台机器上,但实际上可以放在任何地方。它们也可以以不同的方式命名(关于强制性的 java 类似命名的公开讨论:类名 == 文件名)并且现在可以跳过(尽管如果有建议的话,这很酷!)。

注意:我想可以通过一个配置文件来配置脚本(提供绝对路径)并使用这些东西加载它们,然后将 Object 转换为Runnable接口并触发我需要的东西或调用方法(...)。但是不知道它是否可以更容易完成(应该有办法,因为它看起来太笨拙了)。我也想不出一种方法来处理文件命名问题和一个文件问题中的多个类。

PS:这么长的描述可能会引起误解,所以请评论模糊的部分。

0 投票
2 回答
5950 浏览

java - 在多个线程中计算单个变量

我有以下可运行的类。

此类的每个实例都应增加onesif 它遇到的值。

执行完所有线程后,我想ones从类外部读取 的值。

  1. 如何增加ones 线程安全?
  2. 我如何 ones从这个类之外访问?通过静态变量?或者我可以把它放到应用程序上下文中吗?

编辑:

我希望下面的伪代码能让我的意图更清楚。

0 投票
2 回答
2859 浏览

android - Android:收到错误“只有创建视图层次结构的原始线程才能触摸其视图”

我整天都在研究这个问题,我准备把头发拔掉。我在这里和网上找到了一些答案,这些答案说这是由于尝试在线程内(而不是在 UI 线程中)对视图执行某些操作而引起的。但是我已经尝试了所有我见过的想法(处理程序/新线程),但仍然无法让它发挥作用。作为业余爱好,我用 C 编程了很多年,现在我是 Java/Android 的新手。我正在使用 Eclipse 和 Android 2.1 平台进行编程。我希望我的应用程序可以与尽可能多的 Android 手机一起使用,并且我认为我使用的所有功能都与 API 1 兼容。我还看到有一个叫做 AsyncTask 的东西,但这会导致问题有旧手机的人?

所以这就是我的应用程序所做的。当我单击一个按钮时,该应用程序会联机到一个网站并下载一个 xml/rss 提要。然后它解析它并使用我创建的自定义适配器将数据放入列表视图中。下载和解析可能需要 1 秒到 15 秒,所以我想添加一个进度对话框。添加之后,这就是我开始在这篇文章的标题中收到错误消息的地方。该应用程序成功下载(我在网络上的示例 xml 文件中有 8 条记录,因此它非常小),但是在显示列表视图之前我看到了错误。所以我想我需要确切地知道视图的哪一部分导致了错误,然后如何修复它。

这是代码(我已经删除了过去几个小时的所有测试代码,所以它很干净,不会让你们所有人感到困惑......和我):

正如我所说,所有这些代码都运行良好,直到我添加了几天前在另一个网站上找到的进度对话框内容。

我感谢任何和所有的帮助,尽管我已经去 Android Developers 网站查看线程、处理程序等,这让我越来越困惑。实际的代码更改会很棒。:-) 今天看了这么多网站,我的头很疼。

谢谢!

鲍勃

0 投票
2 回答
1591 浏览

java - 尝试创建代理对象时出现 ClassCastException

我正在尝试使用以下代码为给定的 Runnable 对象创建代理:

代理应实现给定对象实现的所有接口,并带有指示代理是否已创建的附加标记接口。由于我不确定给定对象是否直接实现 Runnable 我也在所有超类上遍历,但是我假设如果它实现另一个实现 Runnable 的接口它将工作,所以我不需要遍历接口层次结构.

但是,ClassCastException尝试将代理转换为Runnable

我正在尝试思考可能导致此异常的原因。给定对象的类层次结构不可用。

有任何想法吗 ?

0 投票
4 回答
278 浏览

java - 无法理解 Threads-Runnable 接口的工作原理

每次运行它时,我都会得到以下解决方案之一。为什么这样?1 3 5 4 2

1 3 5 2 4

1 3 2 5 4

0 投票
1 回答
219 浏览

android - 尝试调用实现客户端线程的类时强制关闭

我在 android 上有一个客户端服务器应用程序,两者都在同一台机器上运行。在我的客户端应用程序的第一个活动中,我尝试调用应该连接到服务器应用程序的客户端类,但我强制关闭。

这就是我在应用程序的第一个活动中调用客户端类的方式:

这是我的客户类:

有人可以告诉我出了什么问题,或者至少给我一个想法。我应该说的一件事是我的客户端工作正常 - 它连接到服务器,当客户端类集成到我的第一个活动中时(我的意思是,最初我没有客户端类都在第一个活动中......而且它工作正常)。我在这里了解更多详情!提前谢谢你!

0 投票
2 回答
4998 浏览

java - 为什么不调用 run 方法?

当我运行此代码时,它会打印创建线程和启动线程。但不打印线程运行,这意味着运行函数根本没有被调用。为什么会这样?

0 投票
4 回答
992 浏览

java - 用线程理解 Java 并发

我目前正在阅读http://tutorials.jenkov.com/java-concurrency/creating-and-starting-threads.html中的 java 并发教程

我无法理解“子类或可运行”下的以下几行?

当 Runnable 由线程池执行时,很容易将 Runnable 实例排队,直到池中的线程空闲。