A utility to manage and kill threads in Python applications
Project description
PyThreadKiller
A utility to manage and kill threads in Python applications.
Overview
PyThreadKiller is a utility designed to manage and kill threads in Python applications. This package provides a simple and effective way to terminate threads safely and retrieve return values from target functions.
Directory Structure
PyThreadKiller/
├── PyThreadKiller/
│ ├── __init__.py
│ ├── main.py
├── tests/
│ ├── TestPyThreadKiller.py
│ ├── UnittestPyThreadKiller.py
├── CHANGELOG.md
├── README.md
├── .github/
│ └── workflows/
│ └── python-app.yml
└── setup.py
Installation
You can install the package using pip:
pip install PyThreadKiller
Usage
- Here is an example of how to use PyThreadKiller:
import time
from PyThreadKiller import PyThreadKiller
def example_target():
for i in range(5):
print(f"Thread is running... {i}")
time.sleep(1)
return True
# Create an instance of PyThreadKiller
thread = PyThreadKiller(target=example_target)
thread.start()
# Allow the thread to run for 3 seconds
time.sleep(3)
# Kill the thread
result = thread.kill()
print(f"Return value after killing the thread: {result}")
# Output:
# Thread is running... 0
# Thread is running... 1
# Thread is running... 2
# Thread killed successfully
# Return value after killing the thread: None
This file: tests/UnittestPyThreadKiller.py is integral to our CI/CD pipeline for automated testing.
License:
-
This project is licensed under the MIT License - see the LICENSE file for details.
-
This updated
README.mdincludes the new project name, badges, a brief overview, the directory structure, installation instructions, usage example, changelog, and the main code for thePyThreadKillerclass. Make sure to adjust any URLs and links to point to the correct resources for your project.
Changelog
[0.1] - 2024-05-19
Added
- Initial draft of
PyThreadKillerwith basic thread management and killing functionality.
[3.0.4] - 2024-07-20
Fix
- Test file for
PyThreadKillerto test the package itself.
[3.0.6] - 2024-08-04
Documentation and CI/CD
- Documentation update and
CI/CDpipeline for automated testing
[3.0.7] - 2025-12-21
Maintenance
- Removed unused
requestsdependency from the project. - Cleaned up packaging metadata to reflect zero runtime dependencies.
- Ensured
setup.pyand CI configuration install the package directly. - Minor project hygiene improvements (no functional code changes).
[3.0.8] - 2025-12-21
Added / Fixed
- Prepare package for next release.
- Ensure MANIFEST.in includes correct files.
- Update version to 3.0.8 for publishing.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file pythreadkiller-3.0.8.tar.gz.
File metadata
- Download URL: pythreadkiller-3.0.8.tar.gz
- Upload date:
- Size: 4.8 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.12.3
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
cfb20aa841f18a9a83bbc34ec7894c2c84226e69ba04eed31068813f6a01fdd2
|
|
| MD5 |
ea1d7a90b9d6db359fc7d5ffec603e5b
|
|
| BLAKE2b-256 |
e3de65a619970cff1e2dca2b13eaa9b674a420e997e2441a6e26faf4ed5938eb
|
File details
Details for the file pythreadkiller-3.0.8-py3-none-any.whl.
File metadata
- Download URL: pythreadkiller-3.0.8-py3-none-any.whl
- Upload date:
- Size: 5.0 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.12.3
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
47c7d621ff21bde83527cc79466ba24026cd8dba3fc2e9405483589c1416e938
|
|
| MD5 |
0c7e3858770a68d96579c03f5df02e30
|
|
| BLAKE2b-256 |
20d298f6229787b7a30271a3b961b61ac5fa65e49d5a8f23ca2bb78d35df0199
|