private void DelegateSingletonTimer(Execution exec) { try { exec.Action(); } catch (Exception ex) { throw new Exception($"Exception in ThreadCyclicExecutor: Name = <{exec.Name}>, Exception.Message = <{ex.Message}>, Exception.StackTrace = <{ex.StackTrace}>", ex); } finally { exec.Reset(); exec.ThreadIsRunning = false; } }