问题标签 [android-handlerthread]

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 投票
0 回答
22 浏览

android - 非静态类不能有静态变量

我已经发布了 HandlerThread 类,我在以下行出现错误:

错误是inner class cant have inner static memedeclartion

你们中的任何人都可以向我解释为什么对于上述代码行,我无法在内部类中声明静态变量,尽管在下一行中,静态变量没有错误。

谢谢

代码

0 投票
1 回答
31 浏览

android - 如何从 .map 运算符调用 HandlerThread 上的 .start

我正在学习如何在 Android 中处理和使用函数式编程。所以我开发了下面的代码。我想将 HandlerThread 视为可观察的,但是当我尝试从 .map() 运算符调用 .start() 时,我收到以下错误:

请让我知道为什么我会收到此错误以及如何解决它。

代码

0 投票
1 回答
481 浏览

java - Android 处理程序未使用 HandlerThread 接收消息

我在下面的代码中使用HandlerThreadHandler,实际上我尝试将数据从 runnable 更新为 Handler 回调。

在每个循环中,调用了sendMessage()函数,但我在回调中没有收到任何内容。我错过了什么?

0 投票
1 回答
100 浏览

android - Android,IntentService 与 HandlerThread 的自定义服务

我已经阅读了一篇关于线程内 Android 服务的文章,但有一件事我不明白。在帖子中,作者使用了自定义服务,因为它允许多任务处理,而 IntentService 则不允许。

https://guides.codepath.com/android/managing-threads-and-custom-services#custom-services

直到一切都好,但后来作者使用了HandlerThread只允许一个线程的,在我看来,这与普通的 IntentService 没有区别。

https://guides.codepath.com/android/managing-threads-and-custom-services#threading-within-the-service

我对吗?或者有什么我想念的吗?我正在查看这个,因为我想创建一个能够同时运行不同任务的 android 服务,我应该使用它ThreadPoolExecutorHandlerThread

0 投票
2 回答
810 浏览

android - 如何在Android kotlin中使用HandlerThread的onLooperPrepared?

我在 Android 上开发,我想用下面的代码HandlerThread来启动。countdownTimer

但它显示以下错误

所以我想startTimer()onLooperPrepared.

在 Java 中,它类似于以下内容:

但是我没有看到kotlin中的方法。onLooperPrepared在 kotlin中使用很热门?

提前致谢。

0 投票
1 回答
855 浏览

android - 在处理程序线程上设置不同的优先级有什么影响?

我有一个线程优先级设置为后台的处理程序线程,

myHandlerThread = new HandlerThread(HANDLER_THREAD_NAME, Process.THREAD_PRIORITY_BACKGROUND);

在这个myHandlerThread我正在做一些操作来通过调用来改变系统属性

我经常遇到这个异常,

可能有多种原因可能导致这种情况

1) 执行此代码时,本机代码可能已超时。

2) 由于线程被赋予优先级BACKGROUND,因此当 CPU 忙时它可能没有时间执行并且可能在最后超时。

将线程优先级提高到NORMAL会有所帮助吗?或者线程将如何超时?或者可能导致此问题的其他原因是什么?

0 投票
1 回答
124 浏览

android - 停止其中有阻塞调用的 HandlerThread

我正在通过 TCP/IP 发出网络请求并在单独的线程上监听响应。每次进行网络调用时,我都想停止前一个正在监听响应的线程并创建一个新线程。

不幸的是,旧的 HandlerThread 在开始新的之前没有被终止。

有没有办法终止这些HandlerThreads?

线程没有被终止和堆积

0 投票
0 回答
2811 浏览

android - “与所有者长时间监控争用”警告

我收到此警告消息,由于我看到此消息,我也开始看到Google Play 服务没有响应弹出窗口,并且它会在一段时间后关闭我的应用程序。我已经审查了类似的问题,但找不到原因。

以下是我的处理程序线程使用示例。我不知道该怎么做才能避免这个问题。

我使用织物来获取崩溃报告。不确定它是否与此有关。这部分来自显示有关Answers Events Handler1traces.txt的信息的文件,我认为这会有所帮助。

这是另一个类似警告:

这部分也来自traces.txt关于“队列”的文件:

首先,它显示了我在应用程序中使用的特定处理程序线程名称。目前它没有显示它们,但它会打印这些。

我需要了解这是否是一个大问题以及如何解决它们。

谢谢。

0 投票
0 回答
734 浏览

android - 无法在路径打开领域:open() 失败:打开的文件太多

我有一个 android 应用程序,我执行许多领域操作。我尝试使用处理程序线程来加快数据库操作,但是这次我得到了这些错误。我已经审查了类似的问题,但找不到原因。

这是SpotScheduleDaoImp.java,第 113 行对应于该mDatabase.findRealmObject(ScheduleCompound.class, query,行。

这是LocalDatabaseImpl.java,第284行对应于realm = Realm.getDefaultInstance();命令。

我的理解是关闭领域实例有问题,但我不知道为什么。因为在 finally 块中我关闭了领域实例。在此之前,我在 try 和 catch 块的末尾都关闭了它,方法是检查它是否像这样之前没有关闭!realm.isClosed()但当时它给出了错误并说领域实例已经关闭,使其无法使用。所以我把结束部分移到了 finally 块。

这是另一个堆栈跟踪。

我在关闭领域实例时遇到了麻烦。任何帮助,将不胜感激。

谢谢。

0 投票
0 回答
131 浏览

android - 在哪里退出用于 Android 领域操作的处理程序线程?

我有一个我做很多领域操作的 android 应用程序。我想在后台做这些事情,并且我使用了处理程序线程

我还在我的一些活动服务类中使用了处理程序线程,并且我在或方法中使用quit()了这些处理程序线程。onTerminate()onDestroy()

但是,如果是非活动类,我不知道当我在其中使用处理程序线程时应该在哪里退出,因为它们没有onDestroy()方法。我已经评论了这些handlerThread.quit()部分,因为其中一个给出了错误。我有许多具有类似实现的类,并且我以相同的方式实现了它们。我在想在工作完成后关闭处理程序线程是有意义的,但是它有问题,因为当我取消注释这些行时出现错误handlerThread.quit()

我遇到的错误如下:

提前致谢。