Java 并行模式下的大整数乘法
我想写一个android代码,在并行模式下将10000个数字相乘。 例如,将它们分成若干组,然后将线程中的每个组相乘((异步任务)),然后将每个组的结果相乘。Java 并行模式下的大整数乘法,java,android,biginteger,Java,Android,Biginteger,我想写一个android代码,在并行模式下将10000个数字相乘。 例如,将它们分成若干组,然后将线程中的每个组相乘((异步任务)),然后将每个组的结果相乘。 但是我不知道怎么做,有人能帮忙吗?一个线程池可以运行一个任务的多个并行实例,所以你应该确保你的代码是线程安全的。在同步块中包含可由多个线程访问的变量。这种方法将防止一个线程在另一个线程写入变量时读取该变量。通常,这种情况会在静态变量中出现,但在任何只实例化一次的对象中也会出现 通过使用线程池概念,您可以使用给定的代码链接: 在使用异步任
但是我不知道怎么做,有人能帮忙吗?一个线程池可以运行一个任务的多个并行实例,所以你应该确保你的代码是线程安全的。在同步块中包含可由多个线程访问的变量。这种方法将防止一个线程在另一个线程写入变量时读取该变量。通常,这种情况会在静态变量中出现,但在任何只实例化一次的对象中也会出现 通过使用线程池概念,您可以使用给定的代码链接: 在使用异步任务时,您还可以检查: 使用并行流
List<BigInteger> integers = new ArrayList<>();
// fill data
BigInteger result = integers.parallelStream()
.reduce(BigInteger.ONE, (a, e) -> a.multiply(e));
System.out.println(result);
List integers=new ArrayList();
//填充数据
BigInteger结果=整数。parallelStream()
.reduce(biginger.ONE,(a,e)->a.multiply(e));
系统输出打印项次(结果);