mirror of
https://github.com/OpenLogics/MewtocolNet.git
synced 2025-12-06 03:01:24 +00:00
Add reconnect task cancellation
- fix missing build methods for array registers - add reconnect injection task - add slim semaphore for async message single thread handling
This commit is contained in:
@@ -70,8 +70,8 @@ public partial class ConnectView : UserControl {
|
||||
setting.TryReconnectDelayMs = 2000;
|
||||
setting.SendReceiveTimeoutMs = 1000;
|
||||
setting.HeartbeatIntervalMs = 3000;
|
||||
setting.MaxDataBlocksPerWrite = 20;
|
||||
setting.MaxOptimizationDistance = 10;
|
||||
setting.MaxDataBlocksPerWrite = 128;
|
||||
setting.MaxOptimizationDistance = 20;
|
||||
|
||||
})
|
||||
.WithCustomPollLevels(lvl => {
|
||||
|
||||
@@ -25,6 +25,8 @@
|
||||
Click="ClickedConnect"/>
|
||||
<MenuItem Header="Set Random DT1000" IsEnabled="{Binding Plc.IsConnected}"
|
||||
Click="ClickedSetRandom"/>
|
||||
<MenuItem Header="Queue test" IsEnabled="{Binding Plc.IsConnected}"
|
||||
Click="ClickedAddQueueTest"/>
|
||||
<MenuItem Header="Toggle OP mode" IsEnabled="{Binding Plc.IsConnected}"
|
||||
Click="ClickedToggleRunMode"/>
|
||||
</MenuItem>
|
||||
|
||||
@@ -54,6 +54,24 @@ public partial class PlcDataView : UserControl {
|
||||
|
||||
}
|
||||
|
||||
private async void ClickedAddQueueTest(object sender, RoutedEventArgs e) {
|
||||
|
||||
var tasks = new List<Task<short>>();
|
||||
|
||||
for (int i = 0; i < 100; i++) {
|
||||
|
||||
var t = viewModel.Plc.Register.Struct<short>("DT1000").ReadAsync();
|
||||
|
||||
tasks.Add(t);
|
||||
|
||||
}
|
||||
|
||||
var list = await Task.WhenAll(tasks);
|
||||
|
||||
Console.WriteLine();
|
||||
|
||||
}
|
||||
|
||||
private async void ClickedToggleRunMode(object sender, RoutedEventArgs e) {
|
||||
|
||||
await viewModel.Plc.ToggleOperationModeAsync();
|
||||
|
||||
Reference in New Issue
Block a user