Skip to main content

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

This version
History Node

1.0.1

History Node

1.0.0

History Node

0.1.9

History Node

0.1.8

History Node

0.1.7

History Node

0.1.6

History Node

0.1.5

History Node

0.1.4

History Node

0.1.3

History Node

0.1.2

History Node

0.1.1

History Node

0.1.0

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Filename, size & hash SHA256 hash help File type Python version Upload date
threadactive-1.0.1.zip (6.5 kB) Copy SHA256 hash SHA256 Source None Jun 16, 2015

Supported by

Elastic Elastic Search Pingdom Pingdom Monitoring Google Google BigQuery Sentry Sentry Error logging CloudAMQP CloudAMQP RabbitMQ AWS AWS Cloud computing Fastly Fastly CDN DigiCert DigiCert EV certificate StatusPage StatusPage Status page