文件名称:如果使用-numerical grid generation:foundations and applications
文件大小:3.02MB
文件格式:PDF
更新时间:2024-06-29 06:04:19
OPC,3.0
这两个术语在下面使用。他们是不一样的东西。一个空指针是无效指针(0)如果使用 将导致异常。一个 NUL 字符串是一个有效的(非零)指向一个 1 字符数组,其中的字符是 NUL(即 0)。如果一个 NUL 字符串作为[out]参数(或作为一个结构的元素)从一个方法返 回,它必须释放,否则包含 NUL的内存将会丢失。还要注意的是,由于 COM封送限制,一个 NULL指针不能传递给一个[in,string] 参数。在这种情况下,一个指向一个字符串 NUL的 指针应该作为省略的参数来传递。只要有可能,NUL串使用这种规范。 C#不处理 NUL指针 或 NUL字符串。 4.2.5 返回的数组 你会注意到在与指针的指针结合使用 IDL 的语法 size_is(dwCount)。这表明返回的项 目是一个指针所指示的类型的实际的阵列,而不是一个指针数组的指针所指示的类型的项目。 这简化了编组,创建和由服务器和客户端的数据的访问。 4.2.6 缓存数据、设备数据和时间戳 数据源定义为 CACHE 和 DEVICE,在 OPC 规范中没有明确的说明,只作为一个抽象的概 念在通信中使用。数据是从 CACHE 还是从 DEVICE 中读取,仅仅是由已定义的各种接口定义 给定,具体实现规范中不做定义。 一般情况下,认为服务器把数据读到缓存中,而客户通过多种通信机制从缓存中获取数 据。对 DEVICE 的访问被认为速度较慢,但是更准确,通常只在诊断测试或者在某些特殊严 格的操作中使用。 缓存应该反映数据的最新值(可为以后讨论,更新率和死区优化),以及质量和时间戳。 时间戳应表明其值和质量是由设备所获得的时间(如果可用)或时间服务器更新或验证在其 缓存中的值和质量。注意,如果一个设备或服务器检查值每隔 10 秒那么预期行为将是该值 的时间戳将每 10秒进行更新(即使该值实际上不改变)。因此,时间戳反映的是服务器知道 对应的值是准确的时间。 这也是真实的,无论物理设备到系统的接口是否是基于异常。例如,假设它是已知的(a) 一种基于异常设备检查值每 0.5 秒和(B)连接到设备是好的,(c)该设备发送的用于项目