Пример #1
0
def begin():
    prunner.get_dict()['sum'] = 0
    prunner.post_task(init, range(2000))


def init(numbers):
    for i in numbers:
        prunner.post_task(add_one, i)


def add_one(n):
    prunner.post_task(double, n + 1)


def double(n):
    prunner.post_task(sum_up, n)
    prunner.post_task(sum_up, n)


def sum_up(n):
    with prunner.global_lock():
        prunner.get_dict()['sum'] += n


def end():
    print prunner.get_dict()['sum']


prunner.init(10, False, begin, end)
prunner.start()
Пример #2
0
class MyRunner(object):
    def __init__(self, options):
        self._options = options

    def begin(self):
        prunner.get_dict()['sum'] = 0
        prunner.post_task(self.init, range(2000))

    def init(self, numbers):
        for i in numbers:
            prunner.post_task(self.add_one, i)

    def add_one(self, n):
        prunner.post_task(self.double, n + 1)

    def double(self, n):
        prunner.post_task(self.sum_up, n)
        prunner.post_task(self.sum_up, n)

    def sum_up(self, n):
        with prunner.global_lock():
            prunner.get_dict()['sum'] += n

    def end(self):
        print prunner.get_dict()['sum']


runner = MyRunner(None)
prunner.init(10, False, runner.begin, runner.end)
prunner.start()
Пример #3
0
Just an example to show how to use prunner's high level API.

This is easier to use and as fast as prunner_example.py.
'''
import prunner

def begin():
    prunner.get_dict()['sum'] = 0
    prunner.post_task(init, range(2000))

def init(numbers):
    for i in numbers:
        prunner.post_task(add_one, i)

def add_one(n):
    prunner.post_task(double, n + 1)

def double(n):
    prunner.post_task(sum_up, n)
    prunner.post_task(sum_up, n)

def sum_up(n):
    with prunner.global_lock():
        prunner.get_dict()['sum'] += n

def end():
    print prunner.get_dict()['sum']

prunner.init(10, False, begin, end)
prunner.start()
Пример #4
0
class MyRunner(object):
    def __init__(self, options):
        self._options = options

    def begin(self):
        prunner.get_dict()['sum'] = 0
        prunner.post_task(self.init, range(2000))

    def init(self, numbers):
        for i in numbers:
            prunner.post_task(self.add_one, i)

    def add_one(self, n):
        prunner.post_task(self.double, n + 1)

    def double(self, n):
        prunner.post_task(self.sum_up, n)
        prunner.post_task(self.sum_up, n)

    def sum_up(self, n):
        with prunner.global_lock():
            prunner.get_dict()['sum'] += n

    def end(self):
        print prunner.get_dict()['sum']


runner = MyRunner(None)
prunner.init(10, False, runner.begin, runner.end)
prunner.start()