Metadata-Version: 2.1
Name: aio_pydispatch
Version: 0.1.0
Summary: asyncio pydipatch (Signal Manager)
Home-page: https://github.com/whg517/aio-pydispatch.git
Author: huagang517
Author-email: huagang517@126.com
License: UNKNOWN
Description: # aio_pydispatch
        
        Asyncio pydispatch (Signal Manager)
        
        This is based on [pyDispatcher](http://pydispatcher.sourceforge.net/) reference
        [scrapy SignalManager](https://docs.scrapy.org/en/latest/topics/signals.html) implementation on
        [Asyncio](https://docs.python.org/3/library/asyncio.html)
        
        ## Usage
        
        Like the situation often encountered on the web
        
        Init some signals and a signal manager
        
        ```python
        import asyncio
        
        from aio_pydispatch import Signal
        
        server_start = Signal('server_start')
        server_stop = Signal('server_stop')
        
        
        def ppp(value: str) -> None:
            print(value)
        
        
        async def main():
            server_start.connect(ppp)
            server_stop.connect(ppp)
            await server_start.send('server start')
            await asyncio.sleep(1)
            await server_stop.send('server stop')
        
        
        if __name__ == '__main__':
            asyncio.run(main())
        ```
        
        ## Similar design
        
        ### sync
        
        - [pyDispatcher](http://pydispatcher.sourceforge.net/)
        - [Django.dispatch](https://github.com/django/django/tree/master/django/dispatch)
        - [scrapy SignalManager](https://docs.scrapy.org/en/latest/topics/signals.html)
        - [blinker](https://pythonhosted.org/blinker/)
        
        ## Others
        
        [Event system in Python](https://stackoverflow.com/a/16192256/11722440)
Platform: UNKNOWN
Classifier: Programming Language :: Python :: 3.6
Classifier: Programming Language :: Python :: 3.7
Requires-Python: >=3.7
Description-Content-Type: text/markdown
