高阶组件(HOCs)在网格编程中的应用与实现
1. 高阶组件(HOCs)基础
在网格编程里,客户端启动远程计算时,会向 HOC 发送请求,此请求包含输入数据和用于数据处理的代码参数标识符。这一过程涉及两个 Web 服务调用:
- 客户端向 HOC 发送请求,包含输入数据和代码参数标识符。
- 标识符(ID)在代码移动性方面至关重要,HOC 和客户端借助字符串或数字原语实现的标识符,能唯一引用代码参数。这种引用机制可将算法中特定于应用的部分像普通数据一样传输到 Web 服务,用户通过标识符引用代码参数,能确定参数类型并在服务器端将数据转换为可执行代码。
2. 代码参数的多态性和类型检查
若代码参数用面向对象语言编写,服务器端可通过类型转换操作将其转换为合适的类或接口类型。例如在 C++ 中,代码指针(以数据数组表示)可通过类型转换变为函数指针;Java 则需反射来创建代码描述的类实例,但这些转换细节对代码服务用户是透明的。非面向对象的代码参数需要组装特定命令字符串来执行。
Java 和 C++ 都支持代码参数的多态性和类型转换,这使参数声明更通用。用户可使用更具体的接口或类类型,只要与通用类型兼容。不过,用户需负责类型检查,使用不兼容类型的代码参数会导致服务器端出现类转换异常,非面向对象代码参数也需仔细进行类型检查。
并行 HOC 实现存在空缺,由特定于应用的代码参数填补。这些空缺以接口、抽象类类型或带占位符的命令字符串形式表示。客户端使用的标识符能明确每个代码参数在服务器端的位置及使其可执行所需的操作。所有参数通过代码服务传输到 HOC 并正确转换后,代码会与服务器端的 HOC 实现链接,进而启动 HOC 执行。 <
超级会员免费看
订阅专栏 解锁全文
14

被折叠的 条评论
为什么被折叠?



