public abstract class HostUDFWrapper extends Object
该类用于创建主机 UDF 聚合的本地句柄,并用作代理对象来计算哈希码以及比较两个主机 UDF 聚合是否相等。
新的主机 UDF 聚合实现必须扩展此类,并为此目的覆盖 computeHashCode
和 isEqual
方法。
构造方法和描述 |
---|
HostUDFWrapper() |
修饰符和类型 | 方法和描述 |
---|---|
static void |
closeUDFInstance(long hostUDFInstance)
关闭由 `createUDFInstance` 创建的派生 UDF 实例。
|
abstract int |
computeHashCode() |
abstract long |
createUDFInstance()
创建一个派生的主机 UDF 本地实例。
|
boolean |
equals(Object obj) |
int |
hashCode() |
abstract boolean |
isEqual(Object obj) |
public abstract long createUDFInstance()
典型用法,请参考 Aggregation.java
long udf = 0; try { udf = wrapper.createUDFInstance(); return Aggregation.createHostUDFAgg(udf); } finally { // a new UDF is cloned in `createHostUDFAgg`, here should close the UDF instance. if (udf != 0) { HostUDFWrapper.closeUDFInstance(udf); } }
public static void closeUDFInstance(long hostUDFInstance)
hostUDFInstance
- UDF 实例public abstract int computeHashCode()
public abstract boolean isEqual(Object obj)
版权所有 © 2025。保留所有权利。