{ "info": { "author": "Sun Jin", "author_email": "sunjinopensource@qq.com", "bugtrack_url": null, "classifiers": [ "Development Status :: 3 - Alpha", "Intended Audience :: Developers", "License :: OSI Approved :: MIT License", "Operating System :: OS Independent", "Programming Language :: Python", "Programming Language :: Python :: 3" ], "description": "threadactive\n============\n\nA simple utility help building multithread application through message queue.\n\nExamples\n--------\n\nmain.py::\n\n import time\n import threading\n import threadactive\n \n \n class BackWorker(threadactive.Agent):\n def tick(self):\n threadactive.Agent.tick(self)\n print(\"[%s][%d] front\" % (threading.current_thread().getName(), time.clock()) )\n self.print_in_back()\n time.sleep(1)\n\n @threadactive.backend\n def print_in_back(self, *args, **kwargs):\n print(\"[%s][%d] back\" % (threading.current_thread().getName(), time.clock()) )\n if time.clock() > 3:\n self.back_to_front()\n\n @threadactive.frontend\n def back_to_front(self, *args, **kwargs):\n print(\"[%s][%d] back to front\" % (threading.current_thread().getName(), time.clock()) )\n\n\n bw = BackWorker()\n while True:\n bw.tick()\n \noutput::\n\n [MainThread][0] front\n [Thread-1][0] back\n [MainThread][1] front\n [Thread-1][1] back\n [MainThread][2] front\n [Thread-1][2] back\n [MainThread][3] front\n [Thread-1][3] back\n [MainThread][4] back to front\n [MainThread][4] front\n [Thread-1][4] back\n [MainThread][5] back to front\n [MainThread][5] front\n [Thread-1][5] back\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/sunjinopensource/threadactive/", "keywords": null, "license": "UNKNOWN", "maintainer": null, "maintainer_email": null, "name": "threadactive", "package_url": "https://pypi.org/project/threadactive/", "platform": "UNKNOWN", "project_url": "https://pypi.org/project/threadactive/", "project_urls": { "Download": "UNKNOWN", "Homepage": "https://github.com/sunjinopensource/threadactive/" }, "release_url": "https://pypi.org/project/threadactive/1.0.1/", "requires_dist": null, "requires_python": null, "summary": "A simple utility help building multithread application through message queue", "version": "1.0.1" }, "last_serial": 1593737, "releases": { "0.1.0": [ { "comment_text": "", "digests": { "md5": "bea54ace59e979ba547c29f4163f5bfe", "sha256": "e182a90016cb22603900717cbfc0def301566fde3a814f46635571c42569d2a1" }, "downloads": -1, "filename": "threadactive-0.1.0.zip", "has_sig": false, "md5_digest": "bea54ace59e979ba547c29f4163f5bfe", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 4715, "upload_time": "2015-05-20T13:07:15", "url": "https://files.pythonhosted.org/packages/b3/ab/4f169b63921636c85645172a14f18f57fc5f111243553fb21316ecdc6c32/threadactive-0.1.0.zip" } ], "0.1.1": [ { "comment_text": "", "digests": { "md5": "640a16fe5ae27535dc077ca4c9968dab", "sha256": "4548258bcb4b191bf0630f60caede0a3ff8c1334ff09885c279be2045f66fddd" }, "downloads": -1, "filename": "threadactive-0.1.1.zip", "has_sig": false, "md5_digest": "640a16fe5ae27535dc077ca4c9968dab", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 5867, "upload_time": "2015-06-02T03:25:43", "url": "https://files.pythonhosted.org/packages/46/7b/4075106226e2958a89c4dfb2bf9b5c84a8d4a65a4b9ede2abf4b7e0d4086/threadactive-0.1.1.zip" } ], "0.1.2": [ { "comment_text": "", "digests": { "md5": "d0032690d78b23b1877d9ba187fbf2fa", "sha256": "e955748c3f5ef141b34a04cb6accfe6bc710b777bdec77266bb17b00ae13ab3a" }, "downloads": -1, "filename": "threadactive-0.1.2.zip", "has_sig": false, "md5_digest": "d0032690d78b23b1877d9ba187fbf2fa", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 5960, "upload_time": "2015-06-02T03:56:35", "url": "https://files.pythonhosted.org/packages/25/08/7cd21b90a46df4190fb48789fce471da1d7efa895f840404174e5149642f/threadactive-0.1.2.zip" } ], "0.1.3": [ { "comment_text": "", "digests": { "md5": "0d7348ce963da6ab80dcd6a39825ee2d", "sha256": "c2dcd48641c983232825638444df72f8085294ef7180a41788401a620fba33b5" }, "downloads": -1, "filename": "threadactive-0.1.3.zip", "has_sig": false, "md5_digest": "0d7348ce963da6ab80dcd6a39825ee2d", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 6043, "upload_time": "2015-06-02T15:31:12", "url": "https://files.pythonhosted.org/packages/c7/d8/dbe9315728a3a205c91971a8547f3a2559fe036d5e2a638874e253284df7/threadactive-0.1.3.zip" } ], "0.1.4": [ { "comment_text": "", "digests": { "md5": "2fa461304128ad6e541c4ddecf452575", "sha256": "b90f7b2c3d54866805dff07ee3fe1904e8b0f87e6cf6dc708f41e810f818986a" }, "downloads": -1, "filename": "threadactive-0.1.4.zip", "has_sig": false, "md5_digest": "2fa461304128ad6e541c4ddecf452575", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 6462, "upload_time": "2015-06-08T03:43:44", "url": "https://files.pythonhosted.org/packages/c1/09/b224cd30b4a92beba020b6c31399586a4869646854b079d8a0c7a2d55f3d/threadactive-0.1.4.zip" } ], "0.1.5": [ { "comment_text": "", "digests": { "md5": "8832dd2df50218c92d0825e18cc604b7", "sha256": "6028540295a1566afa335527f344e4e02f42c44ecb3c8af024447e0806e347e2" }, "downloads": -1, "filename": "threadactive-0.1.5.zip", "has_sig": false, "md5_digest": "8832dd2df50218c92d0825e18cc604b7", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 6192, "upload_time": "2015-06-08T10:20:06", "url": "https://files.pythonhosted.org/packages/b3/fd/ffb789d9e5b04d3b9ae9ad501635f82fae545baa22697c4eb16e54ed687f/threadactive-0.1.5.zip" } ], "0.1.6": [ { "comment_text": "", "digests": { "md5": "8cee2bc106a4acd1f6397f96f4a938b3", "sha256": "9563eb5a5c82c1aca495510da6ff331e2bf8ef6c55db9e1b49a18e6999cbfde0" }, "downloads": -1, "filename": "threadactive-0.1.6.zip", "has_sig": false, "md5_digest": "8cee2bc106a4acd1f6397f96f4a938b3", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 6245, "upload_time": "2015-06-09T02:09:48", "url": "https://files.pythonhosted.org/packages/45/92/1873db94d7922c1ac3a5a175bd7b29bd731bc20bd72101531135be662258/threadactive-0.1.6.zip" } ], "0.1.7": [ { "comment_text": "", "digests": { "md5": "52a7536be16d134969d49de733a10dd7", "sha256": "9a8caf452a984710071de74470d6b0bb69fea8ee9af14410fd1a0d303a298c1a" }, "downloads": -1, "filename": "threadactive-0.1.7.zip", "has_sig": false, "md5_digest": "52a7536be16d134969d49de733a10dd7", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 6330, "upload_time": "2015-06-12T14:34:23", "url": "https://files.pythonhosted.org/packages/ce/ba/0f7aa78d41e05b2d7e88e63bec4c2c7cee29e57201b4e2eb5ffcad41cd29/threadactive-0.1.7.zip" } ], "0.1.8": [ { "comment_text": "", "digests": { "md5": "7937cabc1880a4449e6176fcca9a3ec0", "sha256": "2c2e91ffbc079b2e8d868d5e9fb4ea26eb38fba4084d6958666c6f2b8f9f6b41" }, "downloads": -1, "filename": "threadactive-0.1.8.zip", "has_sig": false, "md5_digest": "7937cabc1880a4449e6176fcca9a3ec0", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 6371, "upload_time": "2015-06-13T02:52:27", "url": "https://files.pythonhosted.org/packages/64/1c/982296de0bcccb48a0de5daed6b40949578c9f1064b63a268df64cef95a3/threadactive-0.1.8.zip" } ], "0.1.9": [ { "comment_text": "", "digests": { "md5": "2a915f3a5b0bf75b28ad3404d3a967d8", "sha256": "63a54715ca48a0cc960a0272b1fa7820da5f021a77962ac2d53bc054b85a5237" }, "downloads": -1, "filename": "threadactive-0.1.9.zip", "has_sig": false, "md5_digest": "2a915f3a5b0bf75b28ad3404d3a967d8", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 6495, "upload_time": "2015-06-13T11:15:09", "url": "https://files.pythonhosted.org/packages/12/95/cdb369df6f431cfc2063b215d3d23840866d7aac0a800e4a29004c4278af/threadactive-0.1.9.zip" } ], "1.0.0": [ { "comment_text": "", "digests": { "md5": "d367e147a13b350e6c905fc3df09ed4b", "sha256": "33a48abd5e5ea56255b8494cc21a5262dad452fbcb4f8137540b1e3e8a601dcf" }, "downloads": -1, "filename": "threadactive-1.0.0.zip", "has_sig": false, "md5_digest": "d367e147a13b350e6c905fc3df09ed4b", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 6481, "upload_time": "2015-06-16T04:33:44", "url": "https://files.pythonhosted.org/packages/12/1d/c5574bcf8b0e83dfe0df1fd702590a0a9c636e9fa6ad11e7d9ff531261e6/threadactive-1.0.0.zip" } ], "1.0.1": [ { "comment_text": "", "digests": { "md5": "4c74d045e4a9d1d426abe138257a848e", "sha256": "53a23a415c0ac1224d3e923b4064b8b00dacf585ddc94211e2872ad3c6b212be" }, "downloads": -1, "filename": "threadactive-1.0.1.zip", "has_sig": false, "md5_digest": "4c74d045e4a9d1d426abe138257a848e", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 6496, "upload_time": "2015-06-16T04:44:41", "url": "https://files.pythonhosted.org/packages/68/63/827ca1a5492ef98a1c5afa564f944e80ec5a2748aea79ef5622aed0991bb/threadactive-1.0.1.zip" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "4c74d045e4a9d1d426abe138257a848e", "sha256": "53a23a415c0ac1224d3e923b4064b8b00dacf585ddc94211e2872ad3c6b212be" }, "downloads": -1, "filename": "threadactive-1.0.1.zip", "has_sig": false, "md5_digest": "4c74d045e4a9d1d426abe138257a848e", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 6496, "upload_time": "2015-06-16T04:44:41", "url": "https://files.pythonhosted.org/packages/68/63/827ca1a5492ef98a1c5afa564f944e80ec5a2748aea79ef5622aed0991bb/threadactive-1.0.1.zip" } ] }