├── .gitattribuites ├── .github └── workflows │ └── ci.yml ├── .gitignore ├── CHANGELOG.md ├── CONTRIBUTING.md ├── LICENCSE.md ├── README.md ├── docs ├── api.md ├── examples.md ├── images │ ├── stock_monitor_console.png │ └── stock_monitor_ui.png ├── logging.md ├── testing.md ├── usage.md └── windows-asyncio-iocp-termination-issue.md ├── examples ├── signal_async.py ├── signal_basic.py ├── signal_function_slots.py ├── signal_lamba_slots.py ├── stock_core.py ├── stock_monitor_console.py ├── stock_monitor_simple.py ├── stock_monitor_ui.py ├── thread_basic.py ├── thread_worker.py └── utils.py ├── pyproject.toml ├── src └── tsignal │ ├── __init__.py │ ├── contrib │ ├── extensions │ │ ├── __init__.py │ │ └── property.py │ └── patterns │ │ ├── __init__.py │ │ └── worker │ │ ├── __init__.py │ │ └── decorators.py │ ├── core.py │ └── utils.py └── tests ├── __init__.py ├── conftest.py ├── integration ├── __init__.py ├── test_async.py ├── test_thread_safety.py ├── test_threading.py ├── test_with_signal.py ├── test_worker.py ├── test_worker_queue.py └── test_worker_signal.py ├── performance ├── test_memory.py └── test_stress.py └── unit ├── __init__.py ├── test_property.py ├── test_signal.py ├── test_slot.py ├── test_utils.py └── test_weak.py /.gitattribuites: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/TSignalDev/tsignal-python/HEAD/.gitattribuites -------------------------------------------------------------------------------- /.github/workflows/ci.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/TSignalDev/tsignal-python/HEAD/.github/workflows/ci.yml -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/TSignalDev/tsignal-python/HEAD/.gitignore -------------------------------------------------------------------------------- /CHANGELOG.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/TSignalDev/tsignal-python/HEAD/CHANGELOG.md -------------------------------------------------------------------------------- /CONTRIBUTING.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/TSignalDev/tsignal-python/HEAD/CONTRIBUTING.md -------------------------------------------------------------------------------- /LICENCSE.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/TSignalDev/tsignal-python/HEAD/LICENCSE.md -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/TSignalDev/tsignal-python/HEAD/README.md -------------------------------------------------------------------------------- /docs/api.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/TSignalDev/tsignal-python/HEAD/docs/api.md -------------------------------------------------------------------------------- /docs/examples.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/TSignalDev/tsignal-python/HEAD/docs/examples.md -------------------------------------------------------------------------------- /docs/images/stock_monitor_console.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/TSignalDev/tsignal-python/HEAD/docs/images/stock_monitor_console.png -------------------------------------------------------------------------------- /docs/images/stock_monitor_ui.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/TSignalDev/tsignal-python/HEAD/docs/images/stock_monitor_ui.png -------------------------------------------------------------------------------- /docs/logging.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/TSignalDev/tsignal-python/HEAD/docs/logging.md -------------------------------------------------------------------------------- /docs/testing.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/TSignalDev/tsignal-python/HEAD/docs/testing.md -------------------------------------------------------------------------------- /docs/usage.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/TSignalDev/tsignal-python/HEAD/docs/usage.md -------------------------------------------------------------------------------- /docs/windows-asyncio-iocp-termination-issue.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/TSignalDev/tsignal-python/HEAD/docs/windows-asyncio-iocp-termination-issue.md -------------------------------------------------------------------------------- /examples/signal_async.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/TSignalDev/tsignal-python/HEAD/examples/signal_async.py -------------------------------------------------------------------------------- /examples/signal_basic.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/TSignalDev/tsignal-python/HEAD/examples/signal_basic.py -------------------------------------------------------------------------------- /examples/signal_function_slots.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/TSignalDev/tsignal-python/HEAD/examples/signal_function_slots.py -------------------------------------------------------------------------------- /examples/signal_lamba_slots.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/TSignalDev/tsignal-python/HEAD/examples/signal_lamba_slots.py -------------------------------------------------------------------------------- /examples/stock_core.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/TSignalDev/tsignal-python/HEAD/examples/stock_core.py -------------------------------------------------------------------------------- /examples/stock_monitor_console.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/TSignalDev/tsignal-python/HEAD/examples/stock_monitor_console.py -------------------------------------------------------------------------------- /examples/stock_monitor_simple.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/TSignalDev/tsignal-python/HEAD/examples/stock_monitor_simple.py -------------------------------------------------------------------------------- /examples/stock_monitor_ui.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/TSignalDev/tsignal-python/HEAD/examples/stock_monitor_ui.py -------------------------------------------------------------------------------- /examples/thread_basic.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/TSignalDev/tsignal-python/HEAD/examples/thread_basic.py -------------------------------------------------------------------------------- /examples/thread_worker.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/TSignalDev/tsignal-python/HEAD/examples/thread_worker.py -------------------------------------------------------------------------------- /examples/utils.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/TSignalDev/tsignal-python/HEAD/examples/utils.py -------------------------------------------------------------------------------- /pyproject.toml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/TSignalDev/tsignal-python/HEAD/pyproject.toml -------------------------------------------------------------------------------- /src/tsignal/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/TSignalDev/tsignal-python/HEAD/src/tsignal/__init__.py -------------------------------------------------------------------------------- /src/tsignal/contrib/extensions/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/TSignalDev/tsignal-python/HEAD/src/tsignal/contrib/extensions/__init__.py -------------------------------------------------------------------------------- /src/tsignal/contrib/extensions/property.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/TSignalDev/tsignal-python/HEAD/src/tsignal/contrib/extensions/property.py -------------------------------------------------------------------------------- /src/tsignal/contrib/patterns/__init__.py: -------------------------------------------------------------------------------- 1 | # pylint: disable=missing-module-docstring 2 | -------------------------------------------------------------------------------- /src/tsignal/contrib/patterns/worker/__init__.py: -------------------------------------------------------------------------------- 1 | # pylint: disable=missing-module-docstring 2 | -------------------------------------------------------------------------------- /src/tsignal/contrib/patterns/worker/decorators.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/TSignalDev/tsignal-python/HEAD/src/tsignal/contrib/patterns/worker/decorators.py -------------------------------------------------------------------------------- /src/tsignal/core.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/TSignalDev/tsignal-python/HEAD/src/tsignal/core.py -------------------------------------------------------------------------------- /src/tsignal/utils.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/TSignalDev/tsignal-python/HEAD/src/tsignal/utils.py -------------------------------------------------------------------------------- /tests/__init__.py: -------------------------------------------------------------------------------- 1 | # pylint: disable=missing-module-docstring 2 | -------------------------------------------------------------------------------- /tests/conftest.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/TSignalDev/tsignal-python/HEAD/tests/conftest.py -------------------------------------------------------------------------------- /tests/integration/__init__.py: -------------------------------------------------------------------------------- 1 | # pylint: disable=missing-module-docstring 2 | -------------------------------------------------------------------------------- /tests/integration/test_async.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/TSignalDev/tsignal-python/HEAD/tests/integration/test_async.py -------------------------------------------------------------------------------- /tests/integration/test_thread_safety.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/TSignalDev/tsignal-python/HEAD/tests/integration/test_thread_safety.py -------------------------------------------------------------------------------- /tests/integration/test_threading.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/TSignalDev/tsignal-python/HEAD/tests/integration/test_threading.py -------------------------------------------------------------------------------- /tests/integration/test_with_signal.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/TSignalDev/tsignal-python/HEAD/tests/integration/test_with_signal.py -------------------------------------------------------------------------------- /tests/integration/test_worker.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/TSignalDev/tsignal-python/HEAD/tests/integration/test_worker.py -------------------------------------------------------------------------------- /tests/integration/test_worker_queue.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/TSignalDev/tsignal-python/HEAD/tests/integration/test_worker_queue.py -------------------------------------------------------------------------------- /tests/integration/test_worker_signal.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/TSignalDev/tsignal-python/HEAD/tests/integration/test_worker_signal.py -------------------------------------------------------------------------------- /tests/performance/test_memory.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/TSignalDev/tsignal-python/HEAD/tests/performance/test_memory.py -------------------------------------------------------------------------------- /tests/performance/test_stress.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/TSignalDev/tsignal-python/HEAD/tests/performance/test_stress.py -------------------------------------------------------------------------------- /tests/unit/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/TSignalDev/tsignal-python/HEAD/tests/unit/__init__.py -------------------------------------------------------------------------------- /tests/unit/test_property.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/TSignalDev/tsignal-python/HEAD/tests/unit/test_property.py -------------------------------------------------------------------------------- /tests/unit/test_signal.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/TSignalDev/tsignal-python/HEAD/tests/unit/test_signal.py -------------------------------------------------------------------------------- /tests/unit/test_slot.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/TSignalDev/tsignal-python/HEAD/tests/unit/test_slot.py -------------------------------------------------------------------------------- /tests/unit/test_utils.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/TSignalDev/tsignal-python/HEAD/tests/unit/test_utils.py -------------------------------------------------------------------------------- /tests/unit/test_weak.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/TSignalDev/tsignal-python/HEAD/tests/unit/test_weak.py --------------------------------------------------------------------------------