
Nov. 22, 2001
8:27 a.m.
Glyph Lefkowitz wrote:
I'm confused. In what way is "adding/removing a reader/writer" not "registering/unregistering an object"?
Here's one issue - removeWriter is called every time the buffer is epmtied out. In the lifetime of a connection, the transport keeps on adding and removing, adding and removing itself as a writer because of this. In select() this isn't an issue, but in poll() it is, since removing and adding the writer is an expensive operation (in fact it adds a %33 overhead, in tests under high loads). I'll see what I can do to fix the poll()-based implementation, but meanwhile the select event loop is much faster under high loads.