Message146971
Follow my comments about half_duplex_close.diff (current latest patch).
+ def handle_close(self):
+ if not self._closing:
+ self._closing = True
+ # try to drain the output buffer
+ while self.writable() and self.initiate_send() > 0:
+ pass
+ self.close()
> *Any* while loop should be avoided in the dispatcher.
> The risk is you keep the poller busy for more than a single loop or,
> at worst, forever.
Right. I will try to change that.
> Also, you expect initiate_send() to return a meaningful value which
> breaks compatibility with existing asynchat code overriding it.
The patch changes also initiate_send() accordingly in asynchat. |
|
Date |
User |
Action |
Args |
2011-11-03 20:12:39 | xdegaye | set | recipients:
+ xdegaye, josiahcarlson, giampaolo.rodola, stutzbach, neologix, François-Xavier.Bourlet |
2011-11-03 20:12:39 | xdegaye | set | messageid: <1320351159.06.0.66571955508.issue12498@psf.upfronthosting.co.za> |
2011-11-03 20:12:38 | xdegaye | link | issue12498 messages |
2011-11-03 20:12:38 | xdegaye | create | |
|