В моем коде есть определенные места, где я вызываю действие, используя метод WorkflowInvoker.Invoke. У меня много проблем с производительностью, потому что я создаю действие каждый раз, когда мне нужно вызвать это.
Согласно этому сообщению в блоге MSDN , я должен кэшировать действие и запустить тот же экземпляр действия, а не создавать новый.
Однако мое приложение является многопоточным. Будет ли безопасным для многих потоков использовать один и тот же экземпляр Activity? В соответствии с документацией MSDN говорится, что она не является поточно-ориентированной, но выглядит как стандартное сообщение почти для всех классов.
Я подозреваю, что он должен быть потокобезопасным, поскольку данные, используемые действием, хранятся в отдельном контексте (как переменные и аргументы), а не как обычный элемент экземпляра класса деятельности.