gpt4 book ai didi

java多线程在给定数量的线程之间分割计算

转载 作者:行者123 更新时间:2023-12-02 04:47:52 25 4
gpt4 key购买 nike

我有一个简单的方法,可以计算数组中每个数字的 pow 并在新数组中返回这些数字...我的问题是如何将此计算拆分为给定数量的线程,从而加快方法的执行速度

public class ExtClass{
public static long pow(long a, int b) {
if (b == 0) return 1;
if (b == 1) return a;
if ((b & 1) == 0) return pow (a * a, b/2);
else return a * pow(a * a, b/2);

}

public static long[] val(long[] a, int p) {
long[] result_array = new long[a.length];

for (int i = 0; i < a.length - 1; i++) {
result_array[i] = pow(a[i], p);
}

return result_array;
}

附注我在java方面完全是菜鸟,需要你的帮助=)

最佳答案

从高层次上看:

  1. 您创建一个可调用类,该类具有 pow 方法的实现。
  2. 您根据您似乎已经计算出的最大可用处理器创建了一个执行程序。
  3. 您创建可调用对象并将其提交给执行程序。
  4. 使用 Future 返回的结果来整理结果

这些链接应该可以帮助您入门: https://blogs.oracle.com/CoreJavaTechTips/entry/get_netbeans_6 http://www.journaldev.com/1090/java-callable-future-example

关于java多线程在给定数量的线程之间分割计算,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29520422/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com