{ "info": { "author": "ruifengyun", "author_email": "rfyiamcool@163.com", "bugtrack_url": null, "classifiers": [ "Development Status :: 4 - Beta", "Intended Audience :: Developers", "License :: OSI Approved :: MIT License", "Programming Language :: Python :: 2.7", "Programming Language :: Python :: 3.0", "Topic :: Software Development :: Libraries :: Python Modules" ], "description": "#local_mutex\n\u672c\u5730\u9501,\u901a\u8fc7fcntl\u9488\u5bf9\u6587\u4ef6\u52a0\u9501\u5b9e\u73b0\u7684. \u9700\u8981\u5f3a\u70c8\u6ce8\u610f\u7684\u662f,\u591a\u7ebf\u7a0b\u4e0b\u662f\u65e0\u6548\u7684,\u539f\u56e0? [\u67e5\u770b\u94fe\u63a5](http://xiaorui.cc)\n\n#Usage:\n\n\u6700\u7b80\u5355\u7684\u4f8b\u5b50,\u9002\u5408\u4e00\u4e2a\u7a0b\u5e8f\u540c\u65f6\u8dd1\u4e00\u4e2a\u7684\u573a\u666f.\n```\nimport sys\nfrom local_mutex import LocalMutex\n\ntry:\n lock = LocalMutex('app.lock')\nexcept LockError:\n sys.exit('already running')\n\ntry:\n print 'doing'\nfinally:\n lock.release()\n```\n\n\u4f7f\u7528wait\u53c2\u6570\u4e0d\u505c\u7684\u8bd5\u56fe\u83b7\u53d6Lock, \u76f4\u5230\u83b7\u53d6\u9501.\n```\nlock = LocalMutex('/var/run/app.lock', wait = True)\ntry:\n print 'doing'\nfinally:\n lock.release()\n```\n\n\u4f7f\u7528with\u5173\u952e\u8bcd\n```\nwith LocalMutex('app.lock', wait = True):\n print 'doing'\n```\n\n\u5982\u679c\u662f\u591a\u7ebf\u7a0b\u73af\u5883,\u76f4\u63a5\u7528threading\u7684Lock\n```\nimport threading\nlock = threading.Lock()\nwith lock:\n pass\n```", "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/rfyiamcool", "keywords": "local mutex,fengyun", "license": "MIT", "maintainer": null, "maintainer_email": null, "name": "local_mutex", "package_url": "https://pypi.org/project/local_mutex/", "platform": "UNKNOWN", "project_url": "https://pypi.org/project/local_mutex/", "project_urls": { "Download": "UNKNOWN", "Homepage": "https://github.com/rfyiamcool" }, "release_url": "https://pypi.org/project/local_mutex/1.0/", "requires_dist": null, "requires_python": null, "summary": "local mutex", "version": "1.0" }, "last_serial": 1838269, "releases": { "1.0": [ { "comment_text": "", "digests": { "md5": "660586bcc146d8f4de8e3206b014e46c", "sha256": "c85ad5977629d97ce5b8715fe343bf04f3409b2bc8cf840dca7e00f1303549cc" }, "downloads": -1, "filename": "local_mutex-1.0.tar.gz", "has_sig": false, "md5_digest": "660586bcc146d8f4de8e3206b014e46c", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 2337, "upload_time": "2015-11-29T14:25:39", "url": "https://files.pythonhosted.org/packages/aa/3f/9d71f4992b5f55c662569bed5fbdbc9fe057f0ecc004dbb190caaa82219e/local_mutex-1.0.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "660586bcc146d8f4de8e3206b014e46c", "sha256": "c85ad5977629d97ce5b8715fe343bf04f3409b2bc8cf840dca7e00f1303549cc" }, "downloads": -1, "filename": "local_mutex-1.0.tar.gz", "has_sig": false, "md5_digest": "660586bcc146d8f4de8e3206b014e46c", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 2337, "upload_time": "2015-11-29T14:25:39", "url": "https://files.pythonhosted.org/packages/aa/3f/9d71f4992b5f55c662569bed5fbdbc9fe057f0ecc004dbb190caaa82219e/local_mutex-1.0.tar.gz" } ] }