It runs with these updates:
"""Helpers functions to run log-running tasks."""
-from web import utils
+from web import utils, http
 from web import webapi as web
+import threading

 def background(func):
     """A function decorator to run a long-running function as a
background thread."""
     def internal(*a, **kw):
         web.data() # cache it

+        web._context = {}
-        tmpctx = web._context[threading.currentThread()]
         web._context[threading.currentThread()] = utils.storage
(web.ctx.copy())
+        tmpctx = web._context[threading.currentThread()]

         def newfunc():
             web._context[threading.currentThread()] = tmpctx
             func(*a, **kw)
             myctx = web._context[threading.currentThread()]
             for k in myctx.keys():
                 if k not in ['status', 'headers', 'output']:
                     try: del myctx[k]
                     except KeyError: pass

         t = threading.Thread(target=newfunc)
         background.threaddb[id(t)] = t
         t.start()
         web.ctx.headers = []
-        return seeother(changequery(_t=id(t)))
+        return web.seeother(http.changequery(_t=id(t)))
     return internal
 background.threaddb = {}

 def backgrounder(func):
     def internal(*a, **kw):
         i = web.input(_method='get')
         if '_t' in i:
             try:
                 t = background.threaddb[int(i._t)]
             except KeyError:
                 return web.notfound()
             web._context[threading.currentThread()] = web._context[t]
             return
         else:
             return func(*a, **kw)
     return internal

The example must be changed.
I used an iframe and a global var.

On Dec 16, 2:32 am, "Anand Chitipothu" <[email protected]> wrote:
> On Tue, Dec 16, 2008 at 5:55 AM, Aaron Swartz <[email protected]> wrote:
>
> >> How can I suggest you some fix to background module?
>
> > Sure, what's wrong with ti?
>
> It doesn't work with 0.3 and it has been moved to experimental.
--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups 
"web.py" group.
To post to this group, send email to [email protected]
To unsubscribe from this group, send email to [email protected]
For more options, visit this group at http://groups.google.com/group/webpy?hl=en
-~----------~----~----~----~------~----~------~--~---

Reply via email to