rendered paste bodyfrom __future__ import with_statement
import imvu
import imvu.test
import imvu.service
from imvu.task import task, threadtask, Return
import time
class ThreadtaskPerformanceTest(imvu.test.TestCase):
def testThreadtaskPerformance(self):
@threadtask
def threadTask():
return 1
@task
def mainTask():
for i in xrange(25000):
n = yield threadTask()
self.assertEqual(1, n)
self.serviceProvider = imvu.service.TestServiceProvider()
start = time.time()
self.serviceProvider.taskScheduler._call(mainTask())
end = time.time()
print "took %f seconds to run 25000 threadtasks (%f tasks/sec)" % (end - start, 5000.0 / (end-start))
if __name__ == '__main__':
imvu.test.main()