diff --git a/src/connection.rs b/src/connection.rs index 6f2b34f..aea8441 100644 --- a/src/connection.rs +++ b/src/connection.rs @@ -403,12 +403,7 @@ impl ConnectionManager { // 执行批量读取 match session.read(&read_requests, TimestampsToReturn::Both, 0f64).await { Ok(results) => { - for (i, result) in results.iter().enumerate() { - if i >= poll_points.len() { - break; - } - - let poll_point = &poll_points[i]; + for (poll_point, result) in poll_points.iter().zip(results.iter()) { let dv = result; let val = dv.value.clone(); let unified_value = val.as_ref().map(crate::telemetry::opcua_variant_to_data);