{ "info": { "author": "David Reid", "author_email": "dreid@dreid.org", "bugtrack_url": null, "classifiers": [], "description": "AtomicLong\n==========\n\nSometimes you need to increment some numbers\n... atomically\n... in python.\n\n``AtomicLong`` was born out of the need for fast thread-safe counters in python.\n\nIt uses `CFFI`_ to bind `GCC's Atomic Builtins`_.\n\nIts value is a C ``long`` which can be incremented, decremented, and set\natomically. It is inspired by Java's `java.util.concurrent.atomic.AtomicLong`_.\n\nExample::\n\n >>> from atomiclong import AtomicLong\n >>> a = AtomicLong(0)\n >>> a += 1\n >>> a.value\n 1\n >>> a += 10\n >>> a.value\n 11\n >>> a.value = 1000\n >>> a.value\n 1000\n >>> a -= 100\n >>> a.value\n 900\n\n\n.. _GCC's Atomic Builtins: http://gcc.gnu.org/onlinedocs/gcc-4.3.5/gcc/Atomic-Builtins.html\n\n.. _CFFI: https://cffi.readthedocs.org\n\n.. _java.util.concurrent.atomic.AtomicLong: http://docs.oracle.com/javase/7/docs/api/java/util/concurrent/atomic/AtomicLong.html", "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/dreid/atomiclong", "keywords": null, "license": "MIT", "maintainer": null, "maintainer_email": null, "name": "atomiclong", "package_url": "https://pypi.org/project/atomiclong/", "platform": "UNKNOWN", "project_url": "https://pypi.org/project/atomiclong/", "project_urls": { "Download": "UNKNOWN", "Homepage": "https://github.com/dreid/atomiclong" }, "release_url": "https://pypi.org/project/atomiclong/0.1.1/", "requires_dist": null, "requires_python": null, "summary": "An AtomicLong type using CFFI.", "version": "0.1.1" }, "last_serial": 854018, "releases": { "0.1": [ { "comment_text": "", "digests": { "md5": "b00df37e8f082e9ae147d9fad50b05a3", "sha256": "f65f1d61b3f3adc5c53b79bb88219b43f8984fc7f1fc2ce43f8941818e11203e" }, "downloads": -1, "filename": "atomiclong-0.1.tar.gz", "has_sig": false, "md5_digest": "b00df37e8f082e9ae147d9fad50b05a3", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 4791, "upload_time": "2013-09-01T01:15:20", "url": "https://files.pythonhosted.org/packages/0a/58/fb879a92bd104a58bd37c5afc3111eb807df397b5d157499904d6885c319/atomiclong-0.1.tar.gz" } ], "0.1.1": [ { "comment_text": "", "digests": { "md5": "1cb5dac8191060069f34a13cb868ed4c", "sha256": "cb1378c4cd676d6f243641c50e277504abf45f70f1ea76e446efcdbb69624bbe" }, "downloads": -1, "filename": "atomiclong-0.1.1.tar.gz", "has_sig": false, "md5_digest": "1cb5dac8191060069f34a13cb868ed4c", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 5057, "upload_time": "2013-09-01T02:06:43", "url": "https://files.pythonhosted.org/packages/86/8c/70aea8215c6ab990f2d91e7ec171787a41b7fbc83df32a067ba5d7f3324f/atomiclong-0.1.1.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "1cb5dac8191060069f34a13cb868ed4c", "sha256": "cb1378c4cd676d6f243641c50e277504abf45f70f1ea76e446efcdbb69624bbe" }, "downloads": -1, "filename": "atomiclong-0.1.1.tar.gz", "has_sig": false, "md5_digest": "1cb5dac8191060069f34a13cb868ed4c", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 5057, "upload_time": "2013-09-01T02:06:43", "url": "https://files.pythonhosted.org/packages/86/8c/70aea8215c6ab990f2d91e7ec171787a41b7fbc83df32a067ba5d7f3324f/atomiclong-0.1.1.tar.gz" } ] }