спасибо за наглядный пример! только непонятно, зачем синхронайзд делать. вот что нашел: Thread-safety is required for the shared-resources accessed by JavaDelegate in the same process application. According to the documentation (see below) they create a new instance of delegate each time a task is going to be executed. Note! Each time a delegation class referencing activity is executed, a separate instance of this class will be created. This means that each time an activity is executed there will be used another instance of the class to call execute(DelegateExecution). Therefore, at any time there can be many delegate instances actively running due to the multiple invocation of Process Definitions. So, if they are accessing a shared resource, then they need to be synchronized (thread-safe), because, that shared resources (static or singleton) is local to the process application and loaded by respective application classloader according to above Invocation Semantics Javadoc. в данном примере не видно, шареный ресурс. если только контекст вызова не считать за оный )
@MultiAntowka5 жыл бұрын
Самая главная проблема компенсаций, поддержка данного подхода со стороны бизнеса. С точки зрения надежности всего контура, я считаю это лучшим вариантом решения
@MultiAntowka5 жыл бұрын
@@BPMN2ru простой пример: оплата за товар в скоупе с некоторыми действиями. Бизнес может(и на моей практике это в большинстве случаях) откатывать оплату при негативном сценарии в доп. действиях.