On Wed, Oct 24, 2012, at 13:59, exarkun@twistedmatrix.com wrote:
The benchmark tools are really intended for actually asynchronous things, like setting up a TCP connection. They can be abused into testing synchronous things, but the results are not very good.
It would probably be better not to try to re-use the asynchronous testing tools for testing synchronous APIs and instead build some tools for testing synchronous APIs. These should be simpler anyway. You don't *need* a running reactor for the synchronous case of flatten().
This message appeared while I was typing my reply, in which I laboriously worked my way round to a similiar conclusion! So I'll write some tests that test synchronous uses, with no Deferreds. Waiting for other results to appear would only skew the timings, so I won't try timing any cases with Deferreds in them. Peter.