gpt4 book ai didi

java - 了解 ForkJoinTask 的 invokeAll 方法

转载 作者:塔克拉玛干 更新时间:2023-11-02 08:10:59 30 4
gpt4 key购买 nike

当我在阅读时 the javadoc about ForkJoinTask我遇到了以下声明:

This method may be invoked only from within ForkJoinPool computations (as may be determined using method inForkJoinPool()). Attempts to invoke in other contexts result in exceptions or errors, possibly including ClassCastException.

我不清楚 ForkJoinContext 在这里的意思。例如,我知道静态上下文是什么意思。它在 JLS 8.1.3 中明确定义如下(强调我的):

A statement or expression occurs in a static context if and only if the innermost method, constructor, instance initializer, static initializer, field initializer, or explicit constructor invocation statement enclosing the statement or expression is a static method, a static initializer, the variable initializer of a static variable, or an explicit constructor invocation statement (§8.8.7).

最佳答案

这里讨论的上下文不是静态/非静态上下文。

这意味着该方法必须从属于ForkJoinPool 的线程中调用。

所以它必须从递归任务中调用。从其他地方调用可能会导致异常/错误。

关于java - 了解 ForkJoinTask 的 invokeAll 方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28454839/

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