Skip to content

Commit 68a568a

Browse files
committed
Update code review comments
1 parent c359e0c commit 68a568a

File tree

1 file changed

+4
-5
lines changed

1 file changed

+4
-5
lines changed

ignite/engine/engine.py

Lines changed: 4 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -328,7 +328,6 @@ def execute_something():
328328

329329
try:
330330
_check_signature(handler, "handler", self, *(event_args + args), **kwargs)
331-
# Use weak reference to break circular reference
332331
self._event_handlers[event_name].append((handler, (weakref.ref(self),) + args, kwargs))
333332
except ValueError:
334333
_check_signature(handler, "handler", *(event_args + args), **kwargs)
@@ -433,15 +432,15 @@ def _fire_event(self, event_name: Any, *event_args: Any, **event_kwargs: Any) ->
433432
self.last_event_name = event_name
434433
for func, args, kwargs in self._event_handlers[event_name]:
435434
kwargs.update(event_kwargs)
436-
# Resolve weak references if present
437435
if args and isinstance(args[0], weakref.ref):
438436
resolved_engine = args[0]()
439437
if resolved_engine is None:
440-
# Engine was garbage collected, skip this handler
441-
continue
438+
raise RuntimeError("Engine reference not resolved. Cannot execute event handler.")
442439
first, others = ((resolved_engine,), args[1:])
443440
else:
444-
first, others = ((args[0],), args[1:]) if (args and args[0] == self) else (tuple(), args)
441+
# metrics do not provide engine when registered
442+
first, others = ((), args)
443+
445444
func(*first, *(event_args + others), **kwargs)
446445

447446
def fire_event(self, event_name: Any) -> None:

0 commit comments

Comments
 (0)