Commits

Author Commit Message Labels Comments Date
gill...@gmail.com
Use wheel distribution.
gill...@gmail.com
update version for map_async change
gill...@gmail.com
If callback function given, then callback send response.
gill...@gmail.com
submit async needs to pass chunksize
gill...@gmail.com
Executor map() and map_async() methods take optional chunksize parameter to limit concurrenty. This lets caller avoid using too many threads when processing many items.
gill...@gmail.com
Update version for changes to map_ mathods.
gill...@gmail.com
Calling an Executor's map() and map_async() methods is no longer restricted to a single parameter per call. Renamed and fixed Reactor map_in_thread() and map_in_thread_async() methods. Added unit tests to cover ThreadPool.map_async() and Reactor map_ methods.
gill...@gmail.com
Executor class provides common interface and functionality for ThreadPool calsses. Optionally change size limits when manually resizing ThreadPool. Added separate unit test for ThreadRunner.
gill...@gmail.com
Added ThreadRunner class that is like ThreadPool, but runs each submitted task in a new thread. Reactor uses ThreadRunner if no ThreadPool given to ctor. ThreadRunner has same interface as ThreadPool and simplifies Reactor by allowing same syntax for thread pool or no thread pool. ThreadPool has map() method that is a parallel version of Python map(). Reactor map_call_in_thread() which calls into its threadpool's map() method.
gill...@gmail.com
Submitting task to ThreadPool returns a completion object, same as with submitting a task to the Reactor. Optional result queue can be specified when submitting task to ThreadPool. New Task class to hold task execution data. Same Task.execute() method used for both Reactor and ThreadPool task execution. Replaces thread_wrapper in Reactor. Removed redundant asserts. Do not allow replacing callback when defering reactor call.
gill...@gmail.com
ThreadPool: replace __len__() with threads() for getting number of threads in thread pool. More explicit meaning, so clearer and less change of unexpected behavior. Renamed get_idle_threads() to idle_threads(), get_queue_size() to qsize(). Reactor unit test checkes that thread pool is being used.
gill...@gmail.com
Reactor.shutdown() takes optional parameter to shutdown threadpool. Reactor.shutdown() returns True on success.
gill...@gmail.com
Fix decreasing pool size when too many idle threads.
gill...@gmail.com
Remove bad assert
gill...@gmail.com
Add printing back into unit test. Reformat output.
gill...@gmail.com
Added call_at() method to Reactor.
gill...@gmail.com
- ThreadPool can now, optionally, automatically resize itself. - Changed "Result" class to "Completion". - Renamed methods in Completion class. - Reactor constructor now takes optional ThreadPool object instead of ThreadPool construction parameters. Decouples ctors: changes to ThreadPool ctor do not require change to Reactor ctor. - Removed overloaded (internal) parameters when queuing scheduled calls. - ThreadPool queue_task() renamed to submit().
gill...@gmail.com
update version
gill...@gmail.com
Fix import issue.
gill...@gmail.com
update version
gill...@gmail.com
- Result is not available until callback completes. This allows caller waiting on result to reliably handle exception in callback. - Callback function takes return from called function as argument. - Fix python3 compatibility issue on import. - Add unit tests to test exception in callback.
gill...@gmail.com
In reactor call_ methods, optionally specify a queue to put Result objects one when the associated function has completed.
gill...@gmail.com
Fix spelling in README
gill...@gmail.com
Update README. Add MANIFEST.in so that examples are included in source dist.
gill...@gmail.com
Fix setup issue with python3. Add example.
gill...@gmail.com
Code is python3 compatible.
gill...@gmail.com
Fix wiki link
gill...@gmail.com
Update README.
gill...@gmail.com
initial commit