It works! In the original codes, I use 'write' directly in another thread instead of the reactor thread, it seems that this caused the 'slow' problem. Now, I have changed to use reactor.callFromThread, and it works fine till now.
thanks! :-) On Sat, Oct 9, 2010 at 8:07 PM, <[email protected]> wrote: > On 09:16 am, [email protected] wrote: >>It seems that, when use "self.transport.write" in the protocol >>implementation, >>it will buffer the content for a long time before it actually send it >>out, especially >>when the size of content is big, is there a 'flush' like method that I >>can do the >>flush manually? > > There's no more buffering than is necessary. If your data isn't sent > pretty quickly, then you're doing something wrong. For example, perhaps > you're calling transport.write from a non-reactor thread? Or in a > never-ending loop? >>And when use 'self.transport.writeSomeData', if the size of content to >>be sent is >>large, it will not be able to send anything. What is the strategy to >>use it? > > Don't ever call transport.writeSomeData. It will do something > arbitrarily wrong. > > Jean-Paul > > _______________________________________________ > Twisted-Python mailing list > [email protected] > http://twistedmatrix.com/cgi-bin/mailman/listinfo/twisted-python > _______________________________________________ Twisted-Python mailing list [email protected] http://twistedmatrix.com/cgi-bin/mailman/listinfo/twisted-python
