问题标签 [threadgroup]

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 投票
5 回答
1558 浏览

java - 在 Java 中使用线程进行集群

我有一份在 Java 中需要很长时间的工作。所以我想把这个工作分成线程并运行它们。线程完成他们的工作后,返回到我的服务和服务给他们新的工作。ThreadGroup 适合这个或任何其他推荐?

0 投票
2 回答
702 浏览

c++ - 封装的 boost thread_group。关于 ids 和同步的问题

我正在使用一个封装 thread_group 的类,并且对此有一些疑问

在类构造函数中,我启动 N 个线程

所以,这是我的问题。

类属性需要同步吗?

每个线程都有不同的ID吗?例如,如果我有

这会导致每个线程的 id 不同,还是每个人都一样?

提前致谢 !

0 投票
2 回答
273 浏览

java - JAVA:ThreadGroup.getParent() 上的 SecurityException

我有一些漂亮的样板 Java 代码,它使用 tg.getParent() 执行 while 循环以获取根线程组。这已经在四种不同的环境(一个 Windows 和三个 Linux)上运行了几个月。最近,我们为访问验证测试添加了第五个环境。这个环境应该尽可能的复制我们的生产环境。开发人员对该系统的访问权限非常有限,我们的托管组设置系统以拥有所有正确的权限和属性是一个多周的过程。

现在几乎一切正常,但是今天,当测试人员进入应用程序中执行上述 getRootThreadGroup() 方法的部分时,对 ThreadGroup.getParent() 的调用显然抛出了 SecurityException。我没有很多详细信息,因为目前我无法找到应用程序日志文件。但我 99.99% 确信这里发生了 SecurityException。我已经查看了 SecurityException 和 getParent() 和 checkAccess() 等的 javadoc,但这些对我来说都没有多大意义。

谁能想到一个简单的原因,为什么这个新环境会导致我们的应用程序在这个调用上抛出一个 SecurityException,而这在任何其他环境中从未被观察到(并且代码肯定会在所有其他环境中毫无例外地执行)?我的直觉是,应用程序的运行时用户不知何故没有“某事”的权限......

哦,它运行在带有 java 1.6 (jrockit-jdk) 的 Bea Weblogic 服务器上,但它的配置应该与其他环境完全相同。

谢谢你的帮助。

0 投票
2 回答
2216 浏览

android - 每次创建新线程都被添加到主线程组

我正在创建许多表面视图实例来查看一些对象,但一次创建一个实例,然后调用 surfaceDestroyed。但是我每次在surfacecreated上创建的线程都被添加到主线程组中。

虽然我正在中断和取消它,但它仍然驻留在主线程组中并创建低内存异常。

代码片段:构造函数

UPDATE Thread.list 函数显示我的中断和空线程仍在线程组中

如何删除它们?

0 投票
0 回答
596 浏览

c++ - 使用回调提升 thread_group

我想写一个 boost::thread_group。假设我正确理解了线程中的回调是什么,我也想在我的程序中应用它。

我找到了以下示例:(没有回调的线程组)

如果我想将其更改为回调,它会简单地添加&之前aFunctionToExecute吗?

我考虑过在以下情况下使用回调:假设我有 2 个内核,我的 for 循环是从 0 到 99(100 个元素)。我不想打开 100 个线程,而是只打开 2 个线程(本例中的核心数),并且在每个线程使用正确的变量完成计算后,它会发送已完成的内容并等待命令运行再次直到将计算所有 100 个元素。

有人知道我可以结合创建这个的一个例子或几个例子吗?

由于我在线程方面没有真正的经验,我想知道这种应用 group_threads 的方式是“正确”的方式吗?

回复

0 投票
1 回答
186 浏览

java - 如何在Java中阻塞一组线程

我有一个任务,我必须使用不同的线程读取数据。

问题是由于读取速率的限制,我用线程组构建了不同的线程。

现在谁能告诉我如何让整个线程组休眠,以便它从它离开的完全相同的位置开始执行,而其他线程组继续执行?

0 投票
2 回答
1212 浏览

java - 有人能告诉我如何在java中创建一个线程组中n个线程的数组吗?

一段时间以来,我一直在尝试寻找一些关于 java 如何创建属于某个线程组的 n 个线程的数组的示例或解释,所以如果有人知道更多信息,请解释一下,谢谢。

0 投票
1 回答
1144 浏览

c++ - boost::threads 示例和堆损坏消息

我对 boost::threads 很陌生,我阅读了文档,但在实践中应用它时遇到了一些麻烦,也许你可以帮忙?首先,我花时间编写了一个自包含的代码清单,演示了我尚无法理解的 2 种类型的行为......

该程序允许用户发出 3 个不同的命令,

  • 任务名称]
  • 信息
  • 退出

目的是该任务将在新线程上启动一些工作,然后在执行工作时返回到命令提示符。用户可以通过info命令找出哪些任务已完成,哪些尚未完成。

我使用的是双核 Win7 机器和 Visual Studio 2008 Express。

问题1>

发出命令task p1 p2 p3开始运行 3 个任务。这可以通过发出info来检查。几秒钟后工作完成,但由于某种原因,完成标志并不总是在 1 或 2 个任务上设置为真。

问题2>

退出程序然后会产生以下消息:

Windows 在 example.exe 中触发了一个断点。这可能是由于堆损坏,这表明 example.exe 或其已加载的任何 DLL 中存在错误。这也可能是由于在 example.exe 具有焦点时用户按 F12。输出窗口可能有更多诊断信息。

希望您可以重现此行为并提供帮助。

提前致谢。亚历克斯。

0 投票
1 回答
214 浏览

java - 什么时候应该创建新的线程组

我想知道,将线程分配给线程组而不是将它们全部包含在一个(主)组中的优点是什么?

假设有 10 个或更多持续活动的线程,并且根据应用程序的需要不时启动几个线程,一种方法将如何对这些进行分组?

谢谢,亚当。

0 投票
2 回答
3417 浏览

multithreading - GPU 上的线程和线程组

我想知道我可以在 GPU 上调度的线程/线程组的“网格”。我正在使用 Direct Compute,所以我将给出一个使用该 API 的具体示例。例如,如果我调用 Dispatch(2,2,2),我理解它总共分派了 2x2x2 = 8 个线程组。但是,如果我调用 Dispatch(8,1,1),它也调度 8x1x1 = 8 个线程组,有什么区别?有性能差异吗?

PS与GPU上的线程相同的问题。在计算 (.hlsl) 文件中声明的 numthreads(2,2,2) 和 numthreads(8,1,1) 有什么区别?

任何帮助,将不胜感激。