MCPcopy
hub / github.com/django/django / disconnect

Method disconnect

django/dispatch/dispatcher.py:179–213  ·  view source on GitHub ↗

Disconnect receiver from sender for signal. If weak references are used, disconnect need not be called. The receiver will be removed from dispatch automatically. Arguments: receiver The registered receiver to disconnect. May be none if

(self, receiver=None, sender=None, dispatch_uid=None)

Source from the content-addressed store, hash-verified

177 self.sender_receivers_cache.clear()
178
179 def disconnect(self, receiver=None, sender=None, dispatch_uid=None):
180 """
181 Disconnect receiver from sender for signal.
182
183 If weak references are used, disconnect need not be called. The
184 receiver will be removed from dispatch automatically.
185
186 Arguments:
187
188 receiver
189 The registered receiver to disconnect. May be none if
190 dispatch_uid is specified.
191
192 sender
193 The registered sender to disconnect
194
195 dispatch_uid
196 the unique identifier of the receiver to disconnect
197 """
198 if dispatch_uid:
199 lookup_key = (dispatch_uid, _make_id(sender))
200 else:
201 lookup_key = (_make_id(receiver), _make_id(sender))
202
203 disconnected = False
204 with self.lock:
205 self._clear_dead_receivers()
206 for index in range(len(self.receivers)):
207 r_key, *_ = self.receivers[index]
208 if r_key == lookup_key:
209 disconnected = True
210 del self.receivers[index]
211 break
212 self.sender_receivers_cache.clear()
213 return disconnected
214
215 def has_listeners(self, sender=None):
216 sync_receivers, async_receivers = self._live_receivers(sender)

Callers 15

uninstall_if_neededFunction · 0.45
closing_iterator_wrapperFunction · 0.45
__call__Method · 0.45
__call__Method · 0.45
requestMethod · 0.45
requestMethod · 0.45
__enter__Method · 0.45
__exit__Method · 0.45
test_closeMethod · 0.45
__call__Method · 0.45
test_large_deletesMethod · 0.45

Calls 3

_clear_dead_receiversMethod · 0.95
_make_idFunction · 0.85
clearMethod · 0.45

Tested by 15

__exit__Method · 0.36
test_closeMethod · 0.36
__call__Method · 0.36
test_large_deletesMethod · 0.36
test_logout_with_userMethod · 0.36
test_login_with_userMethod · 0.36
tearDownMethod · 0.36