OPC Studio User's Guide and Reference
SubscribeMultipleDataChanges Method



OpcLabs.EasyOpcUA Assembly > OpcLabs.EasyOpc.UA Namespace > IEasyUAClientExtension Class : SubscribeMultipleDataChanges Method
The client object that will perform the operation.
Array of OpcLabs.EasyOpc.UA.OperationModel.UAMonitoredItemArguments. Array of argument objects specifying what and how to subscribe.
A callback method to be invoked for each significant monitored item change.
Subscribe to changes of multiple OPC monitored items with a data change callback method. The IEasyUAClient.DataChangeNotification event will be generated for each significant item change, and a specified callback method will be invoked.
Syntax
'Declaration
 
<ExtensionAttribute()>
<NotNullAttribute()>
Public Shared Function SubscribeMultipleDataChanges( _
   ByVal client As IEasyUAClient, _
   ByVal monitoredItemArgumentsArray() As UAMonitoredItemArguments, _
   ByVal dataChangeCallback As EasyUADataChangeNotificationEventHandler _
) As Integer()
'Usage
 
Dim client As IEasyUAClient
Dim monitoredItemArgumentsArray() As UAMonitoredItemArguments
Dim dataChangeCallback As EasyUADataChangeNotificationEventHandler
Dim value() As Integer
 
value = IEasyUAClientExtension.SubscribeMultipleDataChanges(client, monitoredItemArgumentsArray, dataChangeCallback)

Parameters

client
The client object that will perform the operation.
monitoredItemArgumentsArray
Array of OpcLabs.EasyOpc.UA.OperationModel.UAMonitoredItemArguments. Array of argument objects specifying what and how to subscribe.
dataChangeCallback
A callback method to be invoked for each significant monitored item change.

Return Value

Array of System.Int32. The function returns an array of integer handle. Each handle uniquely identifies the monitored item subscription. The indices of elements in the output array are the same as those in the input array, monitoredItemArgumentsArray.
Exceptions
ExceptionDescription

A null reference (Nothing in Visual Basic) is passed to a method that does not accept it as a valid argument.

This is a usage error, i.e. it will never occur (the exception will not be thrown) in a correctly written program. Your code should not catch this exception.

Remarks

 

This method operates (at least in part) asynchronously, with respect to the caller. The actual execution of the operation may be delayed, and the outcome of the operation (if any) is provided to the calling code using an event notification, callback, or other means explained in the text. In a properly written program, this method does not throw any exceptions. You should therefore not put try/catch statements or similar constructs around calls to this method. The only exceptions thrown by this method are for usage errors, i.e. when your code violates the usage contract of the method, such as passing in invalid arguments or calling the method when the state of the object does not allow it. Any operation-related errors (i.e. errors that depend on external conditions that your code cannot reliably check) are indicated by the means the operation returns its outcome (if any), which is described in the text. For more information, see Do not catch any exceptions with asynchronous or multiple-operation methods.
Requirements

Target Platforms: .NET Framework: Windows 10 (selected versions), Windows 11 (selected versions), Windows Server 2016, Windows Server 2022; .NET: Linux, macOS, Microsoft Windows

See Also