Skip to main content

work on time-triggered or event-triggered tasks

Project description


Example

#test.py
from pytasks import App
from datetime import datetime as dt
from datetime import timedelta as td
class T:
def __init__(self, taskid):
self.times = 10 #<--------------the largest number of this task will be executed
self.now = dt.now()
self.every = td(seconds=4) #<------frequency of task being polled
self.taskid = taskid
def __call__(self): #<--------------content of task
print self.taskid, ":", dt.now()-self.now
self.now =dt.now()
def schedule(self): #<--------------task'schedule:
return dt.now()+td(seconds=2) #return bool() or datetime.datetime(...)[means the time to run task]
task1 = T(1)
task2 = T(2)
#set task2's schedule
task2.schedule = lambda: True if os.environ['LOGNAME']=='root' else False
app = App()
app.add(task1)
app.add(task2
app.run()

Project details


Download files

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

Source Distribution

pytasks-1.3.tar.gz (5.5 kB view hashes)

Uploaded Source

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page