summaryrefslogtreecommitdiff
path: root/client-responsiveness/toys/tasks.py
diff options
context:
space:
mode:
Diffstat (limited to 'client-responsiveness/toys/tasks.py')
-rw-r--r--client-responsiveness/toys/tasks.py29
1 files changed, 29 insertions, 0 deletions
diff --git a/client-responsiveness/toys/tasks.py b/client-responsiveness/toys/tasks.py
new file mode 100644
index 0000000..3f8b85d
--- /dev/null
+++ b/client-responsiveness/toys/tasks.py
@@ -0,0 +1,29 @@
+import os
+from twisted.protocols import amp
+from ampoule import child
+
+FIB_DEFAULT = 30
+
+
+def fib(n):
+ '''very silly fibonacci function.
+ do not try to optimize this, the idea is to make your cpu suffer for a
+ while'''
+ n = int(n)
+ if n <= 2:
+ return 1
+ else:
+ return fib(n-1) + fib(n-2)
+
+# ampoule stuff
+
+class Fib(amp.Command):
+ arguments = [('n', amp.Integer())]
+ response = [('fib', amp.Integer())]
+
+
+class FibCalculator(child.AMPChild):
+ @Fib.responder
+ def fib(self, n):
+ #print "FIB FUNCTION CALLED WITH", n
+ return {"fib": fib(n)}