{ "info": { "author": "Stephan Hofmockel", "author_email": "Use the github issues", "bugtrack_url": null, "classifiers": [ "Development Status :: 4 - Beta", "Intended Audience :: Developers", "Programming Language :: C++", "Programming Language :: Python :: 2.6", "Programming Language :: Python :: 2.7" ], "description": "Introduction\n============\n\nboost_queue.cpp contains a queue class which follows the API from Queue.Queue of\nthe Python stdlib. The main difference is how the underlying locking is done. In\nPython-2.X Queue.Queue uses a busy loop in case of a blocking operation.\nThis queue implementation uses condition variables from Boost to avoid the busy\nloop.\n\nboost_queue provides two methods not supported by the Queue from the stdlib.\n\nput_many(items, block=True, timeout=None)\nInstead of pushing a single item a list of items is pushed to the Queue atomicly.\n'items' needs to support __len__ and __iter__ for this call.\nIf block equals 'True' the call blocks until enough free space is available to\nput all items at once.\n\nget_many(items, block=True, timeout=None)\nInstead of returning a single item a tuple of items is returned atomicly.\nWhereas 'items' is the number of items this tuple should contain.\nIf block equals 'True' the call blocks until enough items are in the Queue.\n\nThe main usage of this calls are applications where the Queue is heavily used.\n\nconcurrent_queue.hpp contains a Python independent C++ Queue.\n\nChangelog\n=========\n\n0.4.2 - December 29, 2012\n------------------------\n\n* Fix memory leak in get_many (Appears only if the timeout is reached)\n\n0.4.1 - October 09, 2012\n------------------------\n\n* Fix memory leak in get_many\n* Fix segfault if block and timeout are used\n\n0.4 - March 14, 2012\n--------------------\n\n* add a get_many method\n* add a put_many method\n\n0.3 - March 03, 2012\n--------------------\n\n* Fix a memory leak\n* Release the GIL less often. Now the GIL is only released if the queue needs to wait.\n In the versions before the GIL was released on *every* get/put operation which led\n to a lot of unneeded context switches. This change leads to a significant\n performance improvement if you work heavily on the queue.\n\n0.2 - February 27, 2012\n-----------------------\n\nLet boost_queue.Empty and boost_queue.Full exceptions inhert from Queue.Empty and\nQueue.Full. This allows other code to pass around the boost_queue.Queue object without\ntoo many changes in old code.\n\n0.1 - February 02, 2012\n----------------------\n\n- Initial release", "description_content_type": null, "docs_url": null, "download_url": "UNKNOWN", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "https://github.com/stephan-hof/boost_queue", "keywords": "queue boost", "license": "boost", "maintainer": null, "maintainer_email": null, "name": "boost_queue", "package_url": "https://pypi.org/project/boost_queue/", "platform": "UNKNOWN", "project_url": "https://pypi.org/project/boost_queue/", "project_urls": { "Download": "UNKNOWN", "Homepage": "https://github.com/stephan-hof/boost_queue" }, "release_url": "https://pypi.org/project/boost_queue/0.4.2/", "requires_dist": null, "requires_python": null, "summary": "Queue using boost's locking API", "version": "0.4.2" }, "last_serial": 675721, "releases": { "0.1": [ { "comment_text": "", "digests": { "md5": "83b682f143c091e5f8b3b6466f665899", "sha256": "2862299f6662a516371739d45ff59cfee5d08502e73a4dc89827aefe5dc8fa36" }, "downloads": -1, "filename": "boost_queue-0.1.tar.gz", "has_sig": false, "md5_digest": "83b682f143c091e5f8b3b6466f665899", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 8344, "upload_time": "2012-02-05T11:33:05", "url": "https://files.pythonhosted.org/packages/f4/30/5d1cf1e6e62b0e78cb6ede6269c213ce9360873e830643e5113f96c54d3b/boost_queue-0.1.tar.gz" } ], "0.2": [ { "comment_text": "", "digests": { "md5": "e358691194de0eddcf695097bec00b3a", "sha256": "aa3957e4ba07024e06e01a56497e8ede768f175b2e105e892cf2886d3c70e42b" }, "downloads": -1, "filename": "boost_queue-0.2.tar.gz", "has_sig": false, "md5_digest": "e358691194de0eddcf695097bec00b3a", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 8680, "upload_time": "2012-02-27T19:09:37", "url": "https://files.pythonhosted.org/packages/9f/d8/6a864e847f72c0077d9bd9dbbe6dfa636c3c2ea196f1f13c42d33a623285/boost_queue-0.2.tar.gz" } ], "0.3": [ { "comment_text": "", "digests": { "md5": "d8fe28742f64f283f0a08023ec12183b", "sha256": "0d9de26f5d02963b334ae4c2f28306bbf60acbb225a20596d93b68d2d24b3606" }, "downloads": -1, "filename": "boost_queue-0.3.tar.gz", "has_sig": false, "md5_digest": "d8fe28742f64f283f0a08023ec12183b", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 8929, "upload_time": "2012-03-05T09:03:14", "url": "https://files.pythonhosted.org/packages/05/4f/c52493a3df160933e1ee1cf1ab9bb4d9e184b404fbc11a998d6b8b2ff934/boost_queue-0.3.tar.gz" } ], "0.4": [ { "comment_text": "", "digests": { "md5": "3c3a3d475a916aefe83a448903e34aa5", "sha256": "2704f29dbb86f611b38b0a57e847277a4ad84f61e40128941a55ca996a697037" }, "downloads": -1, "filename": "boost_queue-0.4.tar.gz", "has_sig": false, "md5_digest": "3c3a3d475a916aefe83a448903e34aa5", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 10935, "upload_time": "2012-03-11T20:09:57", "url": "https://files.pythonhosted.org/packages/c3/7c/31116eee2ae6bb857e9a3378a871ac46e0fa9caa71e1188d1d6968e7aef8/boost_queue-0.4.tar.gz" } ], "0.4.2": [ { "comment_text": "", "digests": { "md5": "8f8df86b50652d3d7cd40c86c6a3d5b0", "sha256": "63ef44281dbc9b956991813f34fefca526becfc12f17099378ca4294252ff3b2" }, "downloads": -1, "filename": "boost_queue-0.4.2.tar.gz", "has_sig": false, "md5_digest": "8f8df86b50652d3d7cd40c86c6a3d5b0", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 10701, "upload_time": "2012-12-29T11:02:11", "url": "https://files.pythonhosted.org/packages/22/27/6568c00f81a63fe5e3dec2269b5a66904e4c29af0a99cf19efbcf679899c/boost_queue-0.4.2.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "8f8df86b50652d3d7cd40c86c6a3d5b0", "sha256": "63ef44281dbc9b956991813f34fefca526becfc12f17099378ca4294252ff3b2" }, "downloads": -1, "filename": "boost_queue-0.4.2.tar.gz", "has_sig": false, "md5_digest": "8f8df86b50652d3d7cd40c86c6a3d5b0", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 10701, "upload_time": "2012-12-29T11:02:11", "url": "https://files.pythonhosted.org/packages/22/27/6568c00f81a63fe5e3dec2269b5a66904e4c29af0a99cf19efbcf679899c/boost_queue-0.4.2.tar.gz" } ] }