Assuming an event causes the data in the "other" application to change wouldn't it be easier for the "other" application to post the changes to your web2py app when the event occurs? Having said that, I can envisage a case where there are hundreds or thousands of updates per couple of minutes and you only want a snapsot.
Looking at Massimo's videotest app, that seems to use the approach of starting a process outside of web2py. If that is the case then that process could execute a method after an interval that either: a) sends your web2py app a request that causes it to retrieve the data from the "other" application and update the web2py app database, or b) the process gets the data and updates the web2py database directly (unknown to your web2py app that just selects and gets the latest) To stop the external process your web2py app could write to the db or a file that is checked by the external process each time it wakes up. Admittedly, none of the above explains how to create a background process within web2py - maybe it is just not meant to be done by a mere mortal. On Oct 26, 8:01 pm, tommy <[EMAIL PROTECTED]> wrote: > Massimo, > > Here is my code, > > I use GUI button to start my service (StartEngine, in the background, > I want to retrieve the infomation from another application and save it > in my database for every couple of munites. after I starting my start > engine service, I can go to other screen. and the background service > keeps runing. > > I can create the thread now, but got an error :SQLITE object created > in a thread can only used in that same thread. > > def enginestart(): > menu_setup() > # engine.start() > session.starttimer=True > > symbols=db(db.symbols.id>0).select() > > # for symbol in symbols: > # engine.addMarket(symbol.symbol_Name, > symbol.description,symbol.tick) > > session.flash='engine stared' > session.enginestarted=True > db(db.historyprice.id >0).delete() > # tt=threading.Timer(2, gethistoryprice(db)) > # tt.start() > t=Gethistoryprice() > t.start() > redirect(URL(r=request,c='engine',f='enginemaint')) > return dict() session.starttimer=True > > symbols=db(db.symbols.id>0).select() > > # for symbol in symbols: > # engine.addMarket(symbol.symbol_Name, > symbol.description,symbol.tick) > > session.flash='engine stared' > session.enginestarted=True > db(db.historyprice.id >0).delete() > t=Gethistoryprice(db) > t.start() > redirect(URL(r=request,c='engine',f='enginemaint')) > return dict() > > class Gethistoryprice(threading.Thread): > def __init__(self, db): > threading.Thread.__init__(self) > > self.stopped=0 > self.db=db > > def run(self): > while not self.stopped: > mysym=self.db(db.symbols.id>0).select() > for symbol in mysym: > # p=engine.getlastprice(symbol) > p=random.randrange(10.00,60.00) > now=datetime.datetime.now() > db.historyprice.insert(symbol_Name=symbol.symbol_Name, > timestamp= now, price=p) > > def stop(self): > self.stopped=1 > > On Oct 26, 2:05 pm, mdipierro <[EMAIL PROTECTED]> wrote: > > > This app does that. You upload a video and it is converted in > > background (like at youtube) in a separate process (not a thread, a > > process although the process my have threads). The visitor can later > > check the conversion was completed. It includes documentation: > > >http://mdp.cti.depaul.edu/appliances/default/show/38 > > > Massimo > > > On Oct 26, 2:00 pm, Keith Edmunds <[EMAIL PROTECTED]> wrote: > > > > On Sun, 26 Oct 2008 11:55:08 -0700 (PDT), [EMAIL PROTECTED] > > > said: > > > > > 1) what other background tasks do people envisage? > > > > A regular display update via Ajax (but that could probably be demanded by > > > the client rather than pushed) > > > > > 2) how should you do it in web2py? > > > > Pass. > > > > -- > > > Keith Edmunds- Hide quoted text - > > > - Show quoted text - --~--~---------~--~----~------------~-------~--~----~ You received this message because you are subscribed to the Google Groups "web2py Web Framework" 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/web2py?hl=en -~----------~----~----~----~------~----~------~--~---

