Property Value
Valid values of this property are in the range from 0
to 2147483647 (Int32.MaxValue)
.
The default value of this property is 0
.
OpcLabs.EasyOpcUA Assembly > OpcLabs.EasyOpc.UA Namespace > EasyUAClientCore Class : PullDataChangeNotificationQueueCapacity Property |
[ValueRange(0, 2147483647)] public int PullDataChangeNotificationQueueCapacity {get; set;}
[ValueRange(0, 2147483647)] public: property int PullDataChangeNotificationQueueCapacity { int get(); void set ( int value); }
'Declaration
<ValueRangeAttribute(0, 2147483647)> Public Property PullDataChangeNotificationQueueCapacity As Integer
'Usage
Dim instance As EasyUAClientCore Dim value As Integer instance.PullDataChangeNotificationQueueCapacity = value value = instance.PullDataChangeNotificationQueueCapacity
Valid values of this property are in the range from 0
to 2147483647 (Int32.MaxValue)
.
The default value of this property is 0
.
Exception | Description |
---|---|
System.ArgumentOutOfRangeException | The value of an argument is outside the allowable range of values as defined by the invoked method. 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. |
// This example shows how to subscribe to changes of a single monitored item, pull events, and display each change. // // Find all latest examples here: https://opclabs.doc-that.com/files/onlinedocs/OPCLabs-OpcStudio/Latest/examples.html . // OPC client and subscriber examples in C# on GitHub: https://github.com/OPCLabs/Examples-QuickOPC-CSharp . // Missing some example? Ask us for it on our Online Forums, https://www.opclabs.com/forum/index ! You do not have to own // a commercial license in order to use Online Forums, and we reply to every post. using System; using OpcLabs.EasyOpc.UA; using OpcLabs.EasyOpc.UA.OperationModel; namespace UADocExamples._EasyUAClient { class PullDataChangeNotification { public static void Main1() { UAEndpointDescriptor endpointDescriptor = "opc.tcp://opcua.demo-this.com:51210/UA/SampleServer"; // or "http://opcua.demo-this.com:51211/UA/SampleServer" (currently not supported) // or "https://opcua.demo-this.com:51212/UA/SampleServer/" // Instantiate the client object // In order to use event pull, you must set a non-zero queue capacity upfront. var client = new EasyUAClient { PullDataChangeNotificationQueueCapacity = 1000 }; Console.WriteLine("Subscribing..."); client.SubscribeDataChange(endpointDescriptor, "nsu=http://test.org/UA/Data/ ;i=10853", 1000); Console.WriteLine("Processing data change events for 1 minute..."); int endTick = Environment.TickCount + 60 * 1000; do { EasyUADataChangeNotificationEventArgs eventArgs = client.PullDataChangeNotification(2 * 1000); if (!(eventArgs is null)) // Handle the notification event Console.WriteLine(eventArgs); } while (Environment.TickCount < endTick); Console.WriteLine("Unsubscribing..."); client.UnsubscribeAllMonitoredItems(); } } }
# This example shows how to subscribe to changes of a single monitored item, pull events, and display each change. # # Find all latest examples here: https://opclabs.doc-that.com/files/onlinedocs/OPCLabs-OpcStudio/Latest/examples.html . # OPC client and subscriber examples in PowerShell on GitHub: https://github.com/OPCLabs/Examples-QuickOPC-PowerShell . # Missing some example? Ask us for it on our Online Forums, https://www.opclabs.com/forum/index ! You do not have to own # a commercial license in order to use Online Forums, and we reply to every post. #requires -Version 5.1 using namespace OpcLabs.EasyOpc.UA # The path below assumes that the current directory is [ProductDir]/Examples-NET/PowerShell/Windows . Add-Type -Path "../../../Components/Opclabs.QuickOpc/net472/OpcLabs.EasyOpcUA.dll" Add-Type -Path "../../../Components/Opclabs.QuickOpc/net472/OpcLabs.EasyOpcUAComponents.dll" [UAEndpointDescriptor]$endpointDescriptor = "opc.tcp://opcua.demo-this.com:51210/UA/SampleServer" # or "http://opcua.demo-this.com:51211/UA/SampleServer" (currently not supported) # or "https://opcua.demo-this.com:51212/UA/SampleServer/" # Instantiate the client object. $client = New-Object EasyUAClient # In order to use event pull, you must set a non-zero queue capacity upfront. $client.PullDataChangeNotificationQueueCapacity = 1000 Write-Host "Subscribing..." $client.SubscribeDataChange($endpointDescriptor, "nsu=http://test.org/UA/Data/ ;i=10853", 1000) Write-Host "Processing data change events for 1 minute..." $stopwatch = [System.Diagnostics.Stopwatch]::StartNew() while ($stopwatch.Elapsed.TotalSeconds -lt 60) { $eventArgs = $client.PullDataChangeNotification(2*1000) if ($eventArgs -ne $null) { # Handle the notification event Write-Host $eventArgs } } Write-Host "Unsubscribing..." $client.UnsubscribeAllMonitoredItems() Write-Host "Finished."
' This example shows how to subscribe to changes of a single monitored item, pull events, and display each change. ' ' Find all latest examples here: https://opclabs.doc-that.com/files/onlinedocs/OPCLabs-OpcStudio/Latest/examples.html . ' OPC client and subscriber examples in VB.NET on GitHub: https://github.com/OPCLabs/Examples-QuickOPC-VBNET . ' Missing some example? Ask us for it on our Online Forums, https://www.opclabs.com/forum/index ! You do not have to own ' a commercial license in order to use Online Forums, and we reply to every post. Imports OpcLabs.EasyOpc.UA Imports OpcLabs.EasyOpc.UA.OperationModel Namespace _EasyUAClient Friend Class PullDataChangeNotification Public Shared Sub Main1() ' Define which server we will work with. Dim endpointDescriptor As UAEndpointDescriptor = "opc.tcp://opcua.demo-this.com:51210/UA/SampleServer" ' or "http://opcua.demo-this.com:51211/UA/SampleServer" (currently not supported) ' or "https://opcua.demo-this.com:51212/UA/SampleServer/" ' Instantiate the client object Dim client = New EasyUAClient() ' In order to use event pull, you must set a non-zero queue capacity upfront. client.PullDataChangeNotificationQueueCapacity = 1000 Console.WriteLine("Subscribing...") client.SubscribeDataChange( endpointDescriptor, "nsu=http://test.org/UA/Data/ ;i=10853", 1000) ' or "opc.tcp://opcua.demo-this.com:51210/UA/SampleServer" Console.WriteLine("Processing data change events for 1 minute...") Dim endTick As Integer = Environment.TickCount + 60 * 1000 Do Dim eventArgs As EasyUADataChangeNotificationEventArgs = client.PullDataChangeNotification(2 * 1000) If Not eventArgs Is Nothing Then ' Handle the notification event Console.WriteLine(eventArgs) End If Loop While Environment.TickCount < endTick End Sub End Class End Namespace
REM This example shows how to subscribe to changes of a single monitored item, pull events, and display each change. REM REM Find all latest examples here: https://opclabs.doc-that.com/files/onlinedocs/OPCLabs-OpcStudio/Latest/examples.html . REM OPC client and subscriber examples in Visual Basic on GitHub: https://github.com/OPCLabs/Examples-QuickOPC-VB . REM Missing some example? Ask us for it on our Online Forums, https://www.opclabs.com/forum/index ! You do not have to own REM a commercial license in order to use Online Forums, and we reply to every post. Public Sub PullDataChangeNotification_Main_Command_Click() OutputText = "" Dim eventArgs As EasyUADataChangeNotificationEventArgs ' Instantiate the client object Dim Client As New EasyUAClient ' In order to use event pull, you must set a non-zero queue capacity upfront. Client.PullDataChangeNotificationQueueCapacity = 1000 OutputText = OutputText & "Subscribing..." & vbCrLf Call Client.SubscribeDataChange("opc.tcp://opcua.demo-this.com:51210/UA/SampleServer", "nsu=http://test.org/UA/Data/ ;i=10853", 1000) OutputText = OutputText & "Processing data changed notification events for 1 minute..." & vbCrLf Dim EndTick As Long EndTick = GetTickCount + 60000 While GetTickCount < EndTick Set eventArgs = Client.PullDataChangeNotification(2 * 1000) If Not eventArgs Is Nothing Then ' Handle the notification event OutputText = OutputText & eventArgs & vbCrLf End If Wend OutputText = OutputText & "Unsubscribing..." & vbCrLf Client.UnsubscribeAllMonitoredItems OutputText = OutputText & "Finished." & vbCrLf End Sub
# This example shows how to subscribe to changes of a single monitored item, pull events, and display each change. # # Find all latest examples here: https://opclabs.doc-that.com/files/onlinedocs/OPCLabs-OpcStudio/Latest/examples.html . # OPC client and subscriber examples in Python on GitHub: https://github.com/OPCLabs/Examples-QuickOPC-Python . # Missing some example? Ask us for it on our Online Forums, https://www.opclabs.com/forum/index ! You do not have to own # a commercial license in order to use Online Forums, and we reply to every post. # The QuickOPC package is needed. Install it using "pip install opclabs_quickopc". import opclabs_quickopc import time # Import .NET namespaces. from OpcLabs.EasyOpc.UA import * from OpcLabs.EasyOpc.UA.OperationModel import * # Instantiate the client object client = EasyUAClient() # In order to use event pull, you must set a non-zero queue capacity upfront. client.PullDataChangeNotificationQueueCapacity = 1000 print('Subscribing...') IEasyUAClientExtension.SubscribeDataChange(client, UAEndpointDescriptor('opc.tcp://opcua.demo-this.com:51210/UA/SampleServer'), UANodeDescriptor('nsu=http://test.org/UA/Data/ ;i=10853'), 1000) print('Processing data change events for 1 minute...') endTime = time.time() + 60 while time.time() < endTime: eventArgs = IEasyUAClientExtension.PullDataChangeNotification(client, 2*1000) if eventArgs is not None: # Handle the notification event print(eventArgs)
# This example shows how to subscribe to changes of multiple monitored items, pull events, and display each change. # # Find all latest examples here: https://opclabs.doc-that.com/files/onlinedocs/OPCLabs-OpcStudio/Latest/examples.html . # OPC client and subscriber examples in Python on GitHub: https://github.com/OPCLabs/Examples-QuickOPC-Python . # Missing some example? Ask us for it on our Online Forums, https://www.opclabs.com/forum/index ! You do not have to own # a commercial license in order to use Online Forums, and we reply to every post. # The QuickOPC package is needed. Install it using "pip install opclabs_quickopc". import opclabs_quickopc import time # Import .NET namespaces. from OpcLabs.EasyOpc.UA import * from OpcLabs.EasyOpc.UA.OperationModel import * # Instantiate the client object client = EasyUAClient() # In order to use event pull, you must set a non-zero queue capacity upfront. client.PullDataChangeNotificationQueueCapacity = 1000 print('Subscribing...') client.SubscribeMultipleMonitoredItems([ EasyUAMonitoredItemArguments( None, UAEndpointDescriptor('opc.tcp://opcua.demo-this.com:51210/UA/SampleServer'), UANodeDescriptor('nsu=http://test.org/UA/Data/ ;i=10845'), UAMonitoringParameters(1000)), EasyUAMonitoredItemArguments( None, UAEndpointDescriptor('opc.tcp://opcua.demo-this.com:51210/UA/SampleServer'), UANodeDescriptor('nsu=http://test.org/UA/Data/ ;i=10853'), UAMonitoringParameters(1000)), EasyUAMonitoredItemArguments( None, UAEndpointDescriptor('opc.tcp://opcua.demo-this.com:51210/UA/SampleServer'), UANodeDescriptor('nsu=http://test.org/UA/Data/ ;i=10855'), UAMonitoringParameters(1000)), ]) print('Processing data change events for 1 minute...') endTime = time.time() + 60 while time.time() < endTime: eventArgs = IEasyUAClientExtension.PullDataChangeNotification(client, 2*1000) if eventArgs is not None: # Handle the notification event print(eventArgs)
Target Platforms: .NET Framework: Windows 10 (selected versions), Windows 11 (selected versions), Windows Server 2016, Windows Server 2022; .NET: Linux, macOS, Microsoft Windows
Copyright © 2004-2024 CODE Consulting and Development, s.r.o., Plzen. All rights reserved. Web page: www.opclabs.com
Documentation Home, Send Feedback. Resources: Knowledge Base, Product Downloads. Technical support: Online Forums, FAQ.Missing some example? Ask us for it on our Online Forums! You do not have to own a commercial license in order to use Online Forums, and we reply to every post.