diff --git a/Connectors/Autocad/Speckle.Connectors.AutocadShared/Bindings/AutocadReceiveBinding.cs b/Connectors/Autocad/Speckle.Connectors.AutocadShared/Bindings/AutocadReceiveBinding.cs index d2d68a7fd..59e08efb7 100644 --- a/Connectors/Autocad/Speckle.Connectors.AutocadShared/Bindings/AutocadReceiveBinding.cs +++ b/Connectors/Autocad/Speckle.Connectors.AutocadShared/Bindings/AutocadReceiveBinding.cs @@ -52,7 +52,12 @@ public sealed class AutocadReceiveBinding : IReceiveBinding public void CancelReceive(string modelCardId) => _cancellationManager.CancelOperation(modelCardId); - public async Task Receive(string modelCardId) + public async Task Receive(string modelCardId) => + await Parent + .RunOnMainThreadAsync(async () => await ReceiveInternal(modelCardId).ConfigureAwait(false)) + .ConfigureAwait(false); + + public async Task ReceiveInternal(string modelCardId) { using var scope = _serviceProvider.CreateScope(); scope diff --git a/Connectors/Autocad/Speckle.Connectors.AutocadShared/Operations/Receive/AutocadHostObjectBuilder.cs b/Connectors/Autocad/Speckle.Connectors.AutocadShared/Operations/Receive/AutocadHostObjectBuilder.cs index 6af1fe93c..001ec5c1d 100644 --- a/Connectors/Autocad/Speckle.Connectors.AutocadShared/Operations/Receive/AutocadHostObjectBuilder.cs +++ b/Connectors/Autocad/Speckle.Connectors.AutocadShared/Operations/Receive/AutocadHostObjectBuilder.cs @@ -127,10 +127,6 @@ public class AutocadHostObjectBuilder : IHostObjectBuilder { string objectId = atomicObject.applicationId ?? atomicObject.id; onOperationProgressed.Report(new("Converting objects", (double)++count / atomicObjects.Count)); - if (count % 50 == 0) - { - await Task.Delay(10).ConfigureAwait(true); - } try { List convertedObjects = ConvertObject(atomicObject, layerPath, baseLayerPrefix);