Skip to content

Instantly share code, notes, and snippets.

@flyer103
flyer103 / test_coroutine_schedule.py
Created December 5, 2013 06:48
验证自己对 gevent 中 greenlets 调度顺序的理解
#!/usr/bin/python2.7
# coding: utf-8
import gevent
class TestSchedule(object):
def __init__(self, timeout=1, numtasks=10):
self.timeout = timeout
self.numtasks = numtasks
@flyer103
flyer103 / test_mainthread_coroutines.py
Created December 5, 2013 06:56
验证自己对主线程到 hub greenlet 的切换和 greenlets 间的切换
#!/usr/bin/env python2.7
#coding: utf-8
import gevent
class TestMainCo(object):
def __init__(self, mtimeout=2, gtimeout=3, numtasks=10):
self.mtimeout = mtimeout
self.gtimeout = gtimeout
@flyer103
flyer103 / test_multigreenlets.py
Created December 5, 2013 07:56
尝试 gevent 生成 greenlet 的两种方法
#!/usr/bin/env python2.7
#coding: utf-8
import gevent
from gevent import Greenlet
class MyGreen(Greenlet):
def __init__(self, timeout, msg):
Greenlet.__init__(self)
self.timeout = timeout
@flyer103
flyer103 / test_event.py
Created December 6, 2013 07:17
Play with gevent.event.Event
#!/urs/bin/env python2.7
#coding: utf-8
"""Test the usage of 'gevent.event.Event' class.
"""
import random
import gevent
from gevent.event import Event
@flyer103
flyer103 / test_more_event.py
Created December 6, 2013 08:19
再次测试使用 gevent.event.Event
#!/urs/bin/env python2.7
#coding: utf-8
"""Test the usage of 'gevent.event.Event' class.
"""
import random
import gevent
from gevent.event import Event
@flyer103
flyer103 / test_asyncresult.py
Created December 6, 2013 08:20
Test the usage of 'gevent.event.AsyncResult'
#!/usr/bin/env python2.7
#coding: utf-8
"""Test the usage of 'gevent.event.AsyncResult'
"""
import random
import gevent
from gevent.event import AsyncResult
@flyer103
flyer103 / test_pool.py
Last active December 30, 2015 11:29
Play with gevent.pool.Pool
#!/usr/bin/env python2.7
#coding: utf-8
import gevent
import gevent.pool
class TestPool(object):
def __init__(self, maxsize=10):
@flyer103
flyer103 / test_exception_greenlet.py
Last active December 31, 2015 00:08
test exception
#!/usr/bin/env python2.7
#coding: utf-8
import logging
import gevent
logging.basicConfig(level=logging.INFO)
@flyer103
flyer103 / ADT_array.py
Last active January 1, 2016 00:09
Implement fixed size one-dimension array and two-dimension array in Python.
#!/usr/bin/env python2.7
# -*- coding: utf-8 -*-
"""Implement fixed size one-dimension array and two-dimension array
in Python.
"""
import ctypes
@flyer103
flyer103 / peering3.py
Created December 21, 2013 07:14
An modification of [inter-broker-routing example](http://zguide.zeromq.org/page:all#Worked-Example-Inter-Broker-Routing)
#!/usr/bin/env python2.7
# -*- coding: utf-8 -*-
"""
"""
import sys
import time
import random
import logging