aboutsummaryrefslogtreecommitdiff
path: root/test/git/async/test_channel.py
AgeCommit message (Collapse)Author
2010-06-09Channel: removed pseudoconstructor, which clearly improves the design and ↵Sebastian Thiel
makes it easier to constomize pool: in serial mode, created channels will be serial-only, which brings 15% of performance
2010-06-09Channel: Read method revised - now it really really doesn't block anymore, ↵Sebastian Thiel
and it runs faster as well, about 2/3 of the performance we have when being in serial mode
2010-06-08Its getting better already - intermediate commit before further chaning the ↵Sebastian Thiel
task class
2010-06-08The new channeldesign actually works, but it also shows that its located at ↵Sebastian Thiel
the wrong spot. The channel is nothing more than an adapter allowing to read multiple items from a thread-safe queue, the queue itself though must be 'closable' for writing, or needs something like a writable flag.
2010-06-07pool.consumed_tasks: is now a queue to be thread safe, in preparation for ↵Sebastian Thiel
multiple connected pools Reduced waiting time in tests to make them complete faster
2010-06-06channel.read: enhanced to be sure we don't run into non-atomicity issues ↵Sebastian Thiel
related to our channel closed flag, which is the only way not to block forever on read(0) channels which were closed by a thread 'in the meanwhile'
2010-06-06Improved pool design and started rough implementation, top down to learn ↵Sebastian Thiel
while going. Tests will be written soon for verification, its still quite theoretical
2010-06-05Renamed mp to async, as this is a much better name for what is actually ↵Sebastian Thiel
going on. The default implementation uses threads, which ends up being nothing more than async, as they are all locked down by internal and the global interpreter lock