mirror of
https://github.com/django/django.git
synced 2025-10-24 22:26:08 +00:00
Fixed #27513 -- Made Signal.send()/send_robust() a tiny bit faster.
This commit is contained in:
@@ -185,14 +185,13 @@ class Signal(object):
|
||||
|
||||
Returns a list of tuple pairs [(receiver, response), ... ].
|
||||
"""
|
||||
responses = []
|
||||
if not self.receivers or self.sender_receivers_cache.get(sender) is NO_RECEIVERS:
|
||||
return responses
|
||||
return []
|
||||
|
||||
for receiver in self._live_receivers(sender):
|
||||
response = receiver(signal=self, sender=sender, **named)
|
||||
responses.append((receiver, response))
|
||||
return responses
|
||||
return [
|
||||
(receiver, receiver(signal=self, sender=sender, **named))
|
||||
for receiver in self._live_receivers(sender)
|
||||
]
|
||||
|
||||
def send_robust(self, sender, **named):
|
||||
"""
|
||||
@@ -218,12 +217,12 @@ class Signal(object):
|
||||
receiver. The traceback is always attached to the error at
|
||||
``__traceback__``.
|
||||
"""
|
||||
responses = []
|
||||
if not self.receivers or self.sender_receivers_cache.get(sender) is NO_RECEIVERS:
|
||||
return responses
|
||||
return []
|
||||
|
||||
# Call each receiver with whatever arguments it can accept.
|
||||
# Return a list of tuple pairs [(receiver, response), ... ].
|
||||
responses = []
|
||||
for receiver in self._live_receivers(sender):
|
||||
try:
|
||||
response = receiver(signal=self, sender=sender, **named)
|
||||
|
||||
Reference in New Issue
Block a user