This issue tracker has been migrated to GitHub, and is currently read-only.
For more information, see the GitHub FAQs in the Python's Developer Guide.

classification
Title: asyncore timeouts do not work correctly
Type: behavior Stage:
Components: Library (Lib) Versions: Python 3.1, Python 3.2, Python 2.7
process
Status: closed Resolution: not a bug
Dependencies: Superseder:
Assigned To: Nosy List: giampaolo.rodola, k1h
Priority: normal Keywords:

Created on 2011-01-22 18:02 by k1h, last changed 2022-04-11 14:57 by admin. This issue is now closed.

Files
File name Uploaded Description Edit
asyncore_timeout_patch_with_example.txt k1h, 2011-01-22 18:02 asyncore timeout patch with example
Messages (2)
msg126846 - (view) Author: k1h (k1h) Date: 2011-01-22 18:02
Asyncore for the versions of Python examined do not check for the empty sequences select.select returns to indicate a timeout.  The attached patch served my immediate needs, but no effort was made to verify that all scenarios were covered or that other issues weren't introduced.
msg126852 - (view) Author: Giampaolo Rodola' (giampaolo.rodola) * (Python committer) Date: 2011-01-22 18:48
You have misinterpreted the purpose of timeout argument.
"timeout" argument tells select() or poll() how long they have to wait before returning in case no file descriptors are ready.
This has nothing to do with asyncore.loop() which is supposed to keep running except when:

- all file descriptors have been closed/extinguished
- the count argument is provided

...in which case it finally returns.
Closing out as invalid.
History
Date User Action Args
2022-04-11 14:57:11adminsetgithub: 55191
2011-01-22 18:48:23giampaolo.rodolasetstatus: open -> closed

messages: + msg126852
resolution: not a bug
nosy: giampaolo.rodola, k1h
2011-01-22 18:05:03pitrousetnosy: + giampaolo.rodola

type: behavior
versions: - Python 2.6, Python 2.5
2011-01-22 18:02:50k1hcreate