Most visited

Recently visited

Added in API level 17

ScriptGroup

public final class ScriptGroup
extends BaseObj

java.lang.Object
   ↳ android.renderscript.BaseObj
     ↳ android.renderscript.ScriptGroup


一组与一个执行调用一起执行的内核,就好像它们是单个内核一样

除了内核之外,脚本组也可能包含可调用的函数。 脚本组可以接受输入并生成输出,这些输出由成员内核消耗和生成。 在一个脚本组中,一个内核的输出可以作为输入传递给另一个内核。 API不允许脚本组内核之间的循环依赖关系,从而使其成为内核的有向无环图(DAG)。

将内核分组在一起允许更高效的执行。 例如,可以应用运行时和编译器优化来减少计算和通信开销,并更好地使用CPU和GPU。

Summary

Nested classes

class ScriptGroup.Binding

表示将值绑定到内核或可调用函数中的全局变量。

class ScriptGroup.Builder

此类已在API级别23中弃用。请改为使用ScriptGroup.Builder2

class ScriptGroup.Builder2

用于创建脚本组的构建器类

脚本组使用闭包创建(请参阅类ScriptGroup.Closure )。

class ScriptGroup.Closure

一个不透明的封闭类

闭包表示对内核或可调用函数的函数调用,以及全局变量的参数和值。

class ScriptGroup.Future

一个不透明的期货类

future表示闭包的输出,可以是函数的返回值,也可以是函数写入的全局变量的值。

class ScriptGroup.Input

用于脚本组输入的不透明类

通过调用addInput()方法创建。

Public methods

void destroy()

销毁此ScriptGroup及其中的所有闭包

void execute()

此方法在API级别23中已弃用。请改为使用execute()

Object[] execute(Object... inputs)

执行一个脚本组

void setInput(Script.KernelID s, Allocation a)

此方法在API级别23中已弃用。 execute(Object)改为将参数设置为execute(Object)

void setOutput(Script.KernelID s, Allocation a)

此方法在API级别23中已弃用。请改为使用execute(Object)返回值。

Inherited methods

From class android.renderscript.BaseObj
From class java.lang.Object

Public methods

destroy

Added in API level 17
void destroy ()

销毁此ScriptGroup及其中的所有闭包

execute

Added in API level 17
void execute ()

此方法在API级别23中已弃用。
改为使用execute()

执行ScriptGroup。 这将运行ScriptGroup中的所有内核。 执行ScriptGroup后,不会看到内部连接结果。

execute

Added in API level 23
Object[] execute (Object... inputs)

执行一个脚本组

Parameters
inputs Object: Values for inputs to the script group, in the order as the inputs are added via addInput().
Returns
Object[] Outputs of the script group as an array of objects, in the order as futures are passed to create(String, ScriptGroup.Future...).

setInput

Added in API level 17
void setInput (Script.KernelID s, 
                Allocation a)

此方法在API级别23中已弃用。
改为将参数设置为execute(Object)

设置ScriptGroup的输入。 这指定了要用于需要从ScriptGroup外部提供输入分配的内核的分配。

Parameters
s Script.KernelID: The ID of the kernel where the allocation should be connected.
a Allocation: The allocation to connect.

setOutput

Added in API level 17
void setOutput (Script.KernelID s, 
                Allocation a)

此方法在API级别23中已弃用。
改为使用返回值execute(Object)

设置ScriptGroup的输出。 这指定了一个分配,用于需要在执行ScriptGroup后可见的输出分配的内核。

Parameters
s Script.KernelID: The ID of the kernel where the allocation should be connected.
a Allocation: The allocation to connect.

Hooray!