Charles Haley a62ad5f70c Use one queue object in FunctionDispatch.
Theory: the producer (Qt GUI cover function) exists only once per instance of FunctionDispatcher. This follows from the fact that the dispatcher instance is created on the recipient thread. The consumer (the cover cache) could in theory be multiple threads (but it isn't). Because the items produced by the producer are not equivalent, we need to ensure that the order of items put in the queue by the producer is equal to the order of the requests. To guarantee this order, regardless of the number of consumer threads, we ensure that only one request to the producer can be outstanding.
2010-09-21 20:20:34 +01:00
...
2010-09-17 14:54:58 -06:00
2008-04-04 14:23:29 -07:00
2009-11-24 21:38:15 -07:00

calibre is an e-book library manager. It can view, convert and catalog e-books \
in most of the major e-book formats. It can also talk to e-book reader \
devices. It can go out to the internet and fetch metadata for your books. \
It can download newspapers and convert them into e-books for convenient \
reading. It is cross platform, running on Linux, Windows and OS X.

For screenshots: https://calibre-ebook.com/demo

For installation/usage instructions please see
http://calibre-ebook.com

For source code access:
bzr branch lp:calibre

To update your copy of the source code:
bzr merge

Tarballs of the source code for each release are now available \
at http://code.google.com/p/calibre-ebook
Description
The official source code repository for the calibre ebook manager
Readme GPL-3.0 360 MiB
Languages
Python 92.6%
C 3.3%
C++ 3.1%
HTML 0.4%
Shell 0.2%
Other 0.2%