Skip to main content
This is a pre-production deployment of Warehouse. Changes made here affect the production instance of PyPI (pypi.python.org).
Help us improve Python packaging - Donate today!

Gevent Crontab Scheduler

Project Description

# GeventCron

### 原理:
gevent有个spawn_later()函数,专为定时任务打造...

他的`缺点`就是,别让gevent调度堵塞了....尽量让你业务逻辑,采用gevent patch模块

正在尝试下,借助spawn_later周期功能,解决堵塞的问题, [查看更多GeventCron相关信息](http://xiaorui.cc)

### 安装方法:
```
pip install geventcron

or

python setup.py install
```

### 使用方法:

```
import time
import requests
import threading
import functools
from datetime import datetime


import geventcron


def async(func):
@functools.wraps(func)
def wrapper(*args, **kwargs):
my_thread = threading.Thread(target=func, args=args, kwargs=kwargs)
my_thread.start()
return wrapper


@async
def func_1():
print 'Call func_1'


def func_2():
print 'Call func_2'


def func_3():
print 'Call func_3'


#尽量别用堵塞的模块,可以用grequests
def block():
requests.get("http://www.google.com/")


if __name__ == "__main__":
scheduler = geventcron.Scheduler(logger_name='task_scheduler')
scheduler.schedule('task_1', geventcron.Interval("*/1 * * * *"), func_1)
scheduler.schedule('task_2', geventcron.Interval(2), func_2)
scheduler.schedule('task_3', geventcron.Interval(3), func_3)
# scheduler.run_forever()
scheduler.daemon(flag=True)
print "daemon"
time.sleep(100)
```

Release History

This version
History Node

1.5

History Node

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
geventcron-1.5.tar.gz
(3.4 kB) Copy SHA256 Hash SHA256
Source None Jun 15, 2017

Supported By

Elastic Elastic Search Pingdom Pingdom Monitoring Dyn Dyn DNS Sentry Sentry Error Logging CloudAMQP CloudAMQP RabbitMQ Heroku Heroku PaaS Kabu Creative Kabu Creative UX & Design Fastly Fastly CDN DigiCert DigiCert EV Certificate Google Google Cloud Servers DreamHost DreamHost Log Hosting