java-threads相关内容

Java runOnUiThread和Thread.sleep

我的这个方法来自一个单独的类,其中当调用结束时,我的ImageView的颜色从红色变为白色。示例代码如下: public void endOfCall(){ ((Activity)mContext).runOnUiThread(new Runnable(){ @Override public void run(){ Targe ..
发布时间:2022-06-10 19:07:39 Java开发

在 notifyAll() 之前没有被线程锁定的同步对象

我想要一个布尔值来通知系统的某些部分特定服务已启动. 由于某些奇怪的原因,我收到错误 java.lang.IllegalMonitorStateException: object not locked by thread before notifyAll(). 奇怪的是 notifyAll() 位于一个同步块中,该块控制我调用 notifyAll() 的对象. 我的课是这样开始的 ..

DestroyJavaVM 线程总是在运行

在分析我的应用程序时,我遇到了一个奇怪的行为 - DestroyJavaVM 线程始终在运行 - 100% 的时间. 在对该主题进行了一些研究之后,网上几乎没有任何有价值的信息,我所理解的只是这个线程应该卸载JVM 退出时. 如果是这样,为什么从我启动应用程序的第一刻起,这个线程就 100% 处于 RUNNING 状态?它不会消耗宝贵的资源,因此可能会导致 OutOfMemoryErr ..
发布时间:2022-01-16 12:41:25 Java开发

具有 corePoolSize 0 的 ThreadPoolExecutor 不应在任务队列已满之前执行任务

我正在学习Java 并发实践,但在8.3.1 线程创建和拆卸主题上遇到了困难.以下脚注警告将 corePoolSize 保持为零. 开发人员有时会试图将核心大小设置为零,以便工作线程最终被拆除,因此不会阻止 JVM 退出,但这可能会导致一些不使用 SynchronousQueue 作为其工作队列的线程池中的奇怪行为(就像 newCachedThreadPool 一样).如果池已经是核心大小, ..
发布时间:2021-12-28 22:50:36 Java开发

如果我在同一个类上同步了两个方法,它们可以同时运行吗?

如果我在同一个类上同步了两个方法,它们可以同时在同一个对象上运行吗?例如: class A {公共同步无效方法A(){//方法A}公共同步无效方法B(){//方法B}} 我知道我不能在两个不同的线程中对同一个对象运行两次 methodA().methodB() 中的相同内容. 但是我可以在 methodA() 仍在运行时在不同的线程上运行 methodB() 吗?(同一个对象) 解 ..
发布时间:2021-12-06 12:03:49 Java开发

服务、异步任务和异步任务之间的区别线?

Service, Async Task & 有什么区别?线.如果我没有错的话,所有这些都用于在后台做一些事情.那么,如何决定使用哪个以及何时使用? 解决方案 可能你已经看过关于它们的文档说明了,我就不重复了,我会尽量用自己的话来回答,希望它们能帮助到你你. 服务就像一个活动,但没有用户界面.例如,如果您想获取天气,则可能不会为其创建空白活动,为此您将使用服务. 线程就是线程,可 ..

如何在没有 IllegalMonitorStateException 的情况下在 Java 中使用等待和通知?

我有 2 个矩阵,我需要将它们相乘,然后打印每个单元格的结果.只要一个单元格准备好,我就需要打印它,但例如,即使 [2][0] 的结果首先准备好,我也需要在单元格 [2][0] 之前打印 [0][0] 单元格.所以我需要按订单打印.所以我的想法是让打印机线程等待,直到 multiplyThread 通知它正确的单元格已准备好打印,然后 printerThread 将打印单元格并返回等等等等.. ..
发布时间:2021-11-25 11:50:49 Java开发

wait() 和 sleep() 的区别

线程中的 wait() 和 sleep() 有什么区别? 我是否理解 wait()-ing 线程仍处于运行模式并使用 CPU 周期,但 sleep()-ing 不消耗任何 CPU 周期正确吗? 为什么我们有 wait() 和 sleep():它们的实现在较低级别有何不同? 解决方案 A wait 可以被另一个调用 wait/lang/Object.html" rel="nore ..
发布时间:2021-11-25 11:25:00 Java开发

如何在没有 IllegalMonitorStateException 的情况下在 Java 中使用等待和通知?

我有 2 个矩阵,我需要将它们相乘,然后打印每个单元格的结果.只要一个单元格准备好,我就需要打印它,但例如,即使 [2][0] 的结果首先准备好,我也需要在单元格 [2][0] 之前打印 [0][0] 单元格.所以我需要按订单打印.所以我的想法是让打印机线程等待,直到 multiplyThread 通知它正确的单元格已准备好打印,然后 printerThread 将打印单元格并返回等等等等.. ..
发布时间:2021-11-19 22:52:59 Java开发

wait() 和 sleep() 的区别

线程中的 wait() 和 sleep() 有什么区别? 我是否理解 wait()-ing 线程仍处于运行模式并使用 CPU 周期,但 sleep()-ing 不消耗任何 CPU 周期正确吗? 为什么我们有 wait() 和 sleep():它们的实现在较低级别有何不同? 解决方案 A wait 可以被另一个调用 wait/lang/Object.html" rel="nore ..
发布时间:2021-11-19 22:44:46 Java开发

使用 Map 计算解决 Java 线程可见性和并发错误

我使用 Java 8.我有一个事件处理程序,它以高速率(每秒 n 个)接受事件,当我收到这么多事件(在这个简化的示例中为 1000)时,我想将它们刷新到存储中/p> 我在第 25 行 myCache.get(event.getKey()).add(event.getBean()); 上有可见性错误吗?我应该在 handleEvent() 方法上同步吗? public class myClass ..
发布时间:2021-09-07 18:39:37 Java开发

Vaadin 8:如何在导航到其他具有长加载时间的视图之前显示 ProgressBar 窗口

我想导航到在单击按钮后在网格中显示大数据的视图.我知道有延迟加载,但我想加载所有数据以便能够通过单击标题进行排序.使用延迟加载,我只能对一列进行排序. Button viewDataBtn = new Button("查看扫描数据");viewDataBtn .addClickListener(e -> {UI.getCurrent().getNavigator().navigateTo("sc ..
发布时间:2021-06-21 20:33:57 其他开发

使用多线程搜索列表并查找元素(不使用并行流)

我有办法 public boolean contains(int valueToFind, List list) {//} 如何将数组拆分为 x 个块?并有一个新线程来搜索每个块以寻找值.如果该方法返回 true,我想停止其他线程的搜索. 我看到有很多示例可以简单地在线程之间拆分工作,但是我如何构造它,以便一旦一个线程返回 true,所有线程都将其作为答案返回? 出于这个原因,我不 ..

允许运行的最大线程数

我的linux系统中的最大线程数为93946.我从 cat/proc/sys/kernel/threads-max 获得此值.但是当我创建约32768个线程时,出现了错误 无法创建新的本地线程 如何创建最大线程数(大约93946)? 如果无法创建最大线程数(93946),如何找到允许运行的最大线程数? 解决方案 您可以使用以下命令找到最大线程数: sysctl -a |gr ..
发布时间:2021-05-29 23:05:09 服务器开发

并行矩阵乘法

我正在尝试并行化两个矩阵 A , B 的乘法. 不幸的是,串行实现仍然比并行实现快,或者加速太慢.(矩阵尺寸= 512时,加速效果类似于 1.3 ).可能根本上是错的.外面有人可以给我小费吗? double [] [] matParallel2(final double [] [] matrixA,最后的double [] [] matrixB,最终布尔并行){int行= matrixA ..

使用ScheduledExecutorService在Java中定期运行任务

我正在研究一个程序,该程序将从数据源读取数据,并在读取数据时将其发布.我有一个读取器和一个写入器,读取器产生了几个线程来读取它需要读取的所有数据,将数据放入队列中,然后写入器从队列中读取数据并将其发布. 我有一个读者专用的控制器和一个作家专用的控制器.控制器实现了 Callable 接口,但是可以实现 Runnable 接口,因为我的回叫是 Void . 我想使用执行程序来运行两个控制 ..
发布时间:2021-05-06 18:58:28 Java开发