No musite vytvorit novy thread s tou vasi funkci a ten zastavit tak jak jsem popsal. Nemuzete a nemel byste blokovat request od uzivatele ten by mel jen nastartovat thread a poslat response tedy skoncit jinym requestem pak muzete ten thread zase zastavit.
2009/3/20 Marek <[email protected]> > Na servery nealokujem dalsi thread, mal som namysli thread(ako request). > Uvediem zjednoduseny priklad > > > Z KLIENTa po kliknuti na button "start" volam: trieda.funkcia() > > > SERVER: > > importy.. > > class trieda() { > //konstruktor > > public void funkcia() throws InterruptedException { > > WebContext wctx = WebContextFactory.get(); > String currentPage = wctx.getCurrentPage(); > > Collection sessions = wctx.getScriptSessionsByPage(currentPage); > Util utilAll = new Util(sessions); > > while(true) { > utilAll.setValue(id_naKlientovy, hodnotaKtoruPosielam); > } > } > } > > > Otazne je ako mam po kliknuti na "stop" button zastavit ten nekonecny > cyklus(proste stopnut system) > > > > 2009/3/20 Pavel Savara <[email protected]> > > Vetsinou mate tridu pro thread nejake takto: >> >> class MyThread implements Runnable{ >> volatile boolean stop = false; >> public void run(){ >> while(!stop){ >> do stufff >> } >> public void stop(){ >> stop = true; >> } >> } >> >> Jen pripominam pripadna methoda stop musi byt thread safe a stop promena >> volatile. >> >> Palko >> >> >> 2009/3/20 Marek <[email protected]> >> >>> Ahojte, robim monitorovaci system prostrednictvom dwr comet. Na klientovy >>> mam 2 tlacitka:start a stop (ktore spustia/zastavia monitorovaci system). >>> Problem je pri stopnuti monitorovacieho systemu z klienta. Ako mam stopnut >>> alebo killnut(proste zastavit) spusteny thread kde bezi monitorovanie ? >>> Pouzivam tomcat 6 >>> >> >> > > > -- > M^2 >
