A simple utility help building multithread application through message queue
Project description
A simple utility help building multithread application through message queue.
Examples
main.py:
import time
import threading
import threadactive
class BackWorker(threadactive.Agent):
def tick(self):
threadactive.Agent.tick(self)
print("[%s][%d] front" % (threading.current_thread().getName(), time.clock()) )
self.print_in_back()
time.sleep(1)
@threadactive.backend
def print_in_back(self, *args, **kwargs):
print("[%s][%d] back" % (threading.current_thread().getName(), time.clock()) )
if time.clock() > 3:
self.back_to_front()
@threadactive.frontend
def back_to_front(self, *args, **kwargs):
print("[%s][%d] back to front" % (threading.current_thread().getName(), time.clock()) )
bw = BackWorker()
while True:
bw.tick()
output:
[MainThread][0] front [Thread-1][0] back [MainThread][1] front [Thread-1][1] back [MainThread][2] front [Thread-1][2] back [MainThread][3] front [Thread-1][3] back [MainThread][4] back to front [MainThread][4] front [Thread-1][4] back [MainThread][5] back to front [MainThread][5] front [Thread-1][5] back ...
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
threadactive-1.0.1.zip
(6.5 kB
view details)
File details
Details for the file threadactive-1.0.1.zip.
File metadata
- Download URL: threadactive-1.0.1.zip
- Upload date:
- Size: 6.5 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
53a23a415c0ac1224d3e923b4064b8b00dacf585ddc94211e2872ad3c6b212be
|
|
| MD5 |
4c74d045e4a9d1d426abe138257a848e
|
|
| BLAKE2b-256 |
6863827ca1a5492ef98a1c5afa564f944e80ec5a2748aea79ef5622aed0991bb
|